結果
| 問題 |
No.479 頂点は要らない
|
| ユーザー |
|
| 提出日時 | 2018-05-08 20:35:10 |
| 言語 | JavaScript (node v23.5.0) |
| 結果 |
AC
|
| 実行時間 | 406 ms / 1,500 ms |
| コード長 | 859 bytes |
| コンパイル時間 | 58 ms |
| コンパイル使用メモリ | 6,948 KB |
| 実行使用メモリ | 79,768 KB |
| 最終ジャッジ日時 | 2024-10-13 00:37:06 |
| 合計ジャッジ時間 | 8,165 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 38 |
ソースコード
function Main(input) {
let inputs = input.split('\n');
let n, m;
[n, m] = inputs[0].split(' ').map((e) => e - 0);
let a = new Array(m);
let b = new Array(m);
for (let i = 0; i < m; ++i) {
[a[i], b[i]] = inputs[1 + i].split(' ').map((e) => e - 0);
}
let g = new Array(n);
for (let i = 0; i < n; ++i) {
g[i] = new Array(0);
}
for (let i = 0; i < m; ++i) {
g[a[i]].push(b[i]);
g[b[i]].push(a[i]);
}
let ans = '';
let killed = new Array(n).fill(false);
for (let i = n - 1; i >= 0; --i) {
let must_have = false;
for (let j = 0; j < g[i].length; ++j) {
must_have |= killed[g[i][j]];
}
if (must_have) {
ans += '1';
} else {
if (ans.length > 0) ans += '0';
killed[i] = true;
}
}
console.log('%s', ans);
}
Main(require('fs').readFileSync('/dev/stdin', 'utf8'));