結果

問題 No.305 鍵(2)
ユーザー kenji_shioyakenji_shioya
提出日時 2016-06-02 05:37:46
言語 Java21
(openjdk 21)
結果
AC  
実行時間 118 ms / 2,000 ms
コード長 1,499 bytes
コンパイル時間 3,147 ms
コンパイル使用メモリ 78,548 KB
実行使用メモリ 55,416 KB
平均クエリ数 86.23
最終ジャッジ日時 2024-07-16 23:54:32
合計ジャッジ時間 5,486 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 84 ms
54,284 KB
testcase_01 AC 100 ms
54,744 KB
testcase_02 AC 87 ms
54,644 KB
testcase_03 AC 108 ms
54,588 KB
testcase_04 AC 105 ms
55,416 KB
testcase_05 AC 118 ms
55,100 KB
testcase_06 AC 71 ms
54,152 KB
testcase_07 AC 100 ms
55,120 KB
testcase_08 AC 109 ms
54,976 KB
testcase_09 AC 103 ms
54,672 KB
testcase_10 AC 100 ms
54,412 KB
testcase_11 AC 102 ms
54,744 KB
testcase_12 AC 106 ms
55,224 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.util.*;
import java.io.*;

public class Exercise47{
  public static void main (String[] args) throws IOException{

    BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

    String nums = "0000000000";
    String[] numArray = nums.split("");

    a: for (int a = 0; a < 10; a++){
      b: for (int b = 0; b < 10; b++){

        print(nums);
        String result = new String(in.readLine());

        int resultBeforeNum = getAnswer(result);
        if (resultBeforeNum == 10){
          break a;
        }

        int currentNum = Integer.parseInt(numArray[a]);
        int changedNum = currentNum + 1;
        numArray[a] = String.valueOf(changedNum);

        String newNums = "";
        for (int n = 0; n < 10; n++){
          newNums += numArray[n];
        }

        print(newNums);

        result = new String(in.readLine());
        int resultAfterNum = getAnswer(result);

        if (resultAfterNum == 10){
          break a;
        }else if (resultAfterNum > resultBeforeNum){
          nums = newNums;
          break b;
        }else if (resultAfterNum < resultBeforeNum){
          numArray[a] = String.valueOf(currentNum);
          break b;
        }
      }
    }
  }
  public static int getAnswer(String result){

    String[] resultArray = result.split(" ");

    int resultNum = Integer.parseInt(resultArray[0]);
    return resultNum;
  }

  public static void print(String str){
    System.out.println(str);
    System.out.flush();
  }
}
0