結果
| 問題 | No.602 隠されていたゲーム2 |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 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"));