結果
問題 | No.602 隠されていたゲーム2 |
ユーザー | nebukuro09 |
提出日時 | 2017-12-08 10:41:59 |
言語 | JavaScript (node v23.5.0) |
結果 |
AC
|
実行時間 | 208 ms / 2,000 ms |
コード長 | 1,060 bytes |
コンパイル時間 | 56 ms |
コンパイル使用メモリ | 6,692 KB |
実行使用メモリ | 53,196 KB |
最終ジャッジ日時 | 2024-10-13 00:32:01 |
合計ジャッジ時間 | 3,051 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 21 |
ソースコード
function Main(input) { var data = input.split("\n") var N = data[0] var D = data[1].split(" ") var X = parseInt(data[2].split(" ")[0]) var Y = parseInt(data[2].split(" ")[1]) var M = Math.abs(X) + Math.abs(Y) if (M == 0) { console.log(0) return } for (i = 0; i < N; i++) { D[i] = parseInt(D[i]) if (D[i] == M) { console.log(1) return } } D.sort(function(a,b){ if( a < b ) return -1; if( a > b ) return 1; return 0; }); var p = [-1, -1] for (i = 0; i < N; i++) { var parity = Math.abs(D[i]-M) % 2 if (p[parity] >= 0 && Math.abs(D[i] - p[parity]) <= M && M <= D[i] + p[parity]) { console.log(2) return } p[D[i]%2] = D[i] if (p[parity] >= 0 && Math.abs(D[i] - p[parity]) <= M && M <= D[i] + p[parity]) { console.log(2) return } } console.log(-1) } Main(require("fs").readFileSync("/dev/stdin", "utf8"));