結果
| 問題 | No.3694 犬猿の仲 |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-08-26 14:26:25 |
| 言語 | JavaScript (node v26.7.0 + ACL) |
| 結果 |
AC
不安定
|
| 実行時間 | 128 ms / 2,000 ms |
| + 23µs | |
| コード長 | 897 bytes |
| 記録 | |
| コンパイル時間 | 44 ms |
| コンパイル使用メモリ | 6,528 KB |
| 実行使用メモリ | 97,496 KB |
| 最終ジャッジ日時 | 2026-09-09 20:50:44 |
| 合計ジャッジ時間 | 2,613 ms |
|
ジャッジサーバーID (参考情報) |
judge2_0 / judge1_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 11 |
ソースコード
const d = require('fs').readFileSync(0, 'utf8').split(/\s+/);
let p = 0;
const n = +d[p++], m = +d[p++];
const head = new Int32Array(n + 1).fill(-1);
const nxt = new Int32Array(2 * m), to = new Int32Array(2 * m);
let ec = 0;
for (let i = 0; i < m; i++) {
const a = +d[p++], b = +d[p++];
to[ec] = b; nxt[ec] = head[a]; head[a] = ec++;
to[ec] = a; nxt[ec] = head[b]; head[b] = ec++;
}
const color = new Int8Array(n + 1).fill(-1);
const q = new Int32Array(n);
let ans = 'Yes';
for (let s = 1; s <= n && ans === 'Yes'; s++) {
if (color[s] !== -1) continue;
color[s] = 0;
let qh = 0, qt = 0; q[qt++] = s;
while (qh < qt) {
const v = q[qh++];
for (let e = head[v]; e !== -1; e = nxt[e]) {
const u = to[e];
if (color[u] === -1) { color[u] = color[v] ^ 1; q[qt++] = u; }
else if (color[u] === color[v]) { ans = 'No'; qh = qt; break; }
}
}
}
console.log(ans);