結果

問題 No.2948 move move rotti
ユーザー anago-pieanago-pie
提出日時 2024-10-31 17:26:37
言語 JavaScript
(node v21.7.1)
結果
WA  
実行時間 -
コード長 1,038 bytes
コンパイル時間 239 ms
コンパイル使用メモリ 6,816 KB
実行使用メモリ 46,700 KB
最終ジャッジ日時 2024-10-31 17:26:44
合計ジャッジ時間 3,913 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 61 ms
39,296 KB
testcase_01 AC 62 ms
39,168 KB
testcase_02 AC 65 ms
39,168 KB
testcase_03 AC 69 ms
40,576 KB
testcase_04 AC 64 ms
42,624 KB
testcase_05 AC 64 ms
39,168 KB
testcase_06 WA -
testcase_07 AC 66 ms
42,752 KB
testcase_08 WA -
testcase_09 AC 93 ms
45,620 KB
testcase_10 WA -
testcase_11 AC 66 ms
39,296 KB
testcase_12 AC 66 ms
39,424 KB
testcase_13 AC 70 ms
39,808 KB
testcase_14 AC 68 ms
39,168 KB
testcase_15 AC 68 ms
39,680 KB
testcase_16 AC 75 ms
41,216 KB
testcase_17 AC 70 ms
40,448 KB
testcase_18 AC 75 ms
44,544 KB
testcase_19 AC 73 ms
44,416 KB
testcase_20 WA -
testcase_21 WA -
testcase_22 WA -
testcase_23 WA -
testcase_24 AC 73 ms
43,904 KB
testcase_25 WA -
testcase_26 AC 68 ms
39,168 KB
testcase_27 AC 63 ms
39,168 KB
testcase_28 AC 66 ms
39,424 KB
testcase_29 AC 64 ms
39,168 KB
testcase_30 AC 63 ms
39,424 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

function Main(INPUT){
  const input=INPUT.split("\n");
  const [N,M,K]=input[0].split(" ").map(_=>parseInt(_));
  const start=input[1].split(" ").map(_=>parseInt(_));
  const path=Array(N).fill().map(_=>[]);
  for(let i=0;i<M;i++){
    let [u,v]=input[i+2].split(" ").map(_=>parseInt(_));
    u--;
    v--;
    path[u].push(v);
    path[v].push(u);
  }
  const reach=Array(N).fill().map(_=>Array(N).fill().map(_=>[]));
  for(let i=0;i<K;i++){
    let s=start[i];
    s--;
    const check=Array(N).fill().map(_=>Array(N).fill().map(_=>false));
    check[s][0]=true;
    let q=[[s,0]];
    while(q.length>0){
      let [now,b]=q.pop();
      reach[now][b].push(i);
      if(b==N-1) continue;
      for(let x of path[now]){
        if(!check[x][b+1]){
          check[x][b+1]=true;
          q.push([x,b+1]);
        }
      }
    }
  }
  let ok=false;
  for(let i=0;i<N;i++){
    for(let j=0;j<N;j++){
      if(reach[i][j].length==K) ok=true;
    }
  }
  console.log(ok?"Yes":"No");
}
Main(require("fs").readFileSync("/dev/stdin", "utf8"));
0