第5回ブルーブリッジ杯java本科A組の省試合の試験問題と答え

3701 ワード

1.タイトル:年齢を当てる
質問:明ちゃんは妹を2人連れて元宵灯会に参加しました.「私たち二人の年齢の積は年齢の和の6倍だ」とやんちゃに言った.明ちゃんはまた「双子ではないし、年齢差も8歳を超えないに違いない」と付け加えた.
明ちゃんの小さい妹の年齢を書いてください.
注意:一人の年齢だけを書いて、ブラウザで答えを提出してください.余計な内容は書かないでください.
public class Main{
    public static void main(String[] args){
        for(int x=0;x<100;x++){
            for(int y=0;y<100;y++){
                if(x*y == 6*(x+y) && x !=y && Math.abs(x-y) <=8){
                    System.out.println(x>y?y:x);
                }
            }
        }
    }
}

  :10

2.タイトル:李白打酒
       ,    。       。

  ,     ,     ,     2 。     :

     ,     。
     ,     。

    ,      5 ,   10 ,           ,        。 

李白が店と花に出会う順番を計算してください.店に会うのをa、花に会うのをbと書くことができます.babaabbabbabbabbbbbは合理的な順序です.このような答えは全部でいくらですか?すべての可能なシナリオの個数(テーマが与えられたものを含む)を計算してください.
  :         。      。           。
public class Main {
    public static int count = 0;

    public void dfs(int sum, int step, int step1, int step2) {
        if(step > 15 || (step < 15 && sum == 0))//    ,  15 ,      1 
            return;
        if(step == 15) {
            if(sum == 0 && step1 == 5 && step2 == 10)
                count++;
            return;
        }
        dfs(sum * 2, step + 1, step1 + 1, step2);
        dfs(sum - 1, step + 1, step1, step2 + 1);
        return;
    }

    public static void main(String[] args) {
        Main test = new Main();
        test.dfs(2, 0, 0, 0);
        System.out.println(count);
    }
}

  :14