結果
問題 | No.24 数当てゲーム |
ユーザー | mii288 |
提出日時 | 2014-11-24 19:36:41 |
言語 | JavaScript (node v21.7.1) |
結果 |
AC
|
実行時間 | 66 ms / 5,000 ms |
コード長 | 1,047 bytes |
コンパイル時間 | 63 ms |
コンパイル使用メモリ | 6,688 KB |
実行使用メモリ | 39,424 KB |
最終ジャッジ日時 | 2024-10-12 23:32:47 |
合計ジャッジ時間 | 1,313 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 61 ms
39,040 KB |
testcase_01 | AC | 66 ms
39,296 KB |
testcase_02 | AC | 60 ms
39,040 KB |
testcase_03 | AC | 64 ms
39,424 KB |
testcase_04 | AC | 58 ms
38,912 KB |
testcase_05 | AC | 59 ms
39,168 KB |
testcase_06 | AC | 60 ms
39,168 KB |
testcase_07 | AC | 60 ms
39,296 KB |
testcase_08 | AC | 61 ms
39,168 KB |
testcase_09 | AC | 61 ms
39,168 KB |
ソースコード
// http://yukicoder.me/submissions/3556 function Main(input) { var inputArr = input.split('\n'), reply, i, j, turn_num, num = turn = 0, answer = mask = ~0; // ビット反転 turn_num = inputArr[0]; for(i = 0; i < turn_num; i++) { turn = 0; for(j = 0; j < 4; j++) { num = inputArr[(i+1)].split(' ')[j]; num = 1 << num; // 1をnumだけ左にシフト turn |= num; } reply = inputArr[(i+1)].split(' ')[4]; answer &= (reply == "NO") ? ~turn : turn; } // turnのビットを反転~させると答えに関係ない // 上位ビットが全て1になる。そのためマスクで消す。 mask <<= 10; answer ^= mask; // answerとmaskで異なるビットだけを残す for(i=0; i < 10; i++) { // 最下位ビットが1の時iが答え if (answer & 1==1) break; else answer >>= 1; // 1ビット右にシフト } console.log(i); } // Don't edit this line! Main(require("fs").readFileSync("/dev/stdin", "utf8"));