結果
問題 | No.2431 Viral Hotel |
ユーザー | 👑 SPD_9X2 |
提出日時 | 2023-08-19 03:41:48 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 409 ms / 2,000 ms |
コード長 | 920 bytes |
コンパイル時間 | 297 ms |
コンパイル使用メモリ | 82,192 KB |
実行使用メモリ | 96,344 KB |
最終ジャッジ日時 | 2024-11-28 17:07:06 |
合計ジャッジ時間 | 12,330 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 319 ms
90,876 KB |
testcase_01 | AC | 293 ms
89,916 KB |
testcase_02 | AC | 316 ms
89,956 KB |
testcase_03 | AC | 336 ms
93,388 KB |
testcase_04 | AC | 306 ms
92,824 KB |
testcase_05 | AC | 404 ms
94,984 KB |
testcase_06 | AC | 80 ms
77,408 KB |
testcase_07 | AC | 77 ms
77,420 KB |
testcase_08 | AC | 73 ms
77,156 KB |
testcase_09 | AC | 35 ms
53,164 KB |
testcase_10 | AC | 33 ms
54,292 KB |
testcase_11 | AC | 33 ms
53,468 KB |
testcase_12 | AC | 409 ms
96,344 KB |
testcase_13 | AC | 371 ms
92,132 KB |
testcase_14 | AC | 276 ms
85,600 KB |
testcase_15 | AC | 162 ms
79,672 KB |
testcase_16 | AC | 265 ms
87,896 KB |
testcase_17 | AC | 231 ms
84,004 KB |
testcase_18 | AC | 344 ms
91,584 KB |
testcase_19 | AC | 321 ms
88,416 KB |
testcase_20 | AC | 201 ms
83,640 KB |
testcase_21 | AC | 206 ms
81,264 KB |
testcase_22 | AC | 304 ms
87,180 KB |
testcase_23 | AC | 288 ms
87,208 KB |
testcase_24 | AC | 224 ms
85,896 KB |
testcase_25 | AC | 337 ms
91,372 KB |
testcase_26 | AC | 273 ms
87,752 KB |
testcase_27 | AC | 236 ms
86,336 KB |
testcase_28 | AC | 256 ms
85,388 KB |
testcase_29 | AC | 230 ms
84,160 KB |
testcase_30 | AC | 256 ms
85,716 KB |
testcase_31 | AC | 303 ms
89,244 KB |
testcase_32 | AC | 189 ms
80,864 KB |
testcase_33 | AC | 238 ms
84,156 KB |
testcase_34 | AC | 113 ms
77,924 KB |
testcase_35 | AC | 179 ms
80,712 KB |
testcase_36 | AC | 343 ms
91,368 KB |
testcase_37 | AC | 228 ms
86,404 KB |
testcase_38 | AC | 180 ms
83,816 KB |
testcase_39 | AC | 34 ms
54,096 KB |
testcase_40 | AC | 36 ms
53,772 KB |
testcase_41 | AC | 36 ms
53,508 KB |
testcase_42 | AC | 35 ms
53,524 KB |
testcase_43 | AC | 357 ms
94,660 KB |
testcase_44 | AC | 305 ms
88,336 KB |
testcase_45 | AC | 248 ms
85,472 KB |
ソースコード
""" 最短経路かな 他の人に感染させるタイミング昇順に見ればいい? """ import heapq import sys from sys import stdin N,K,M,P = map(int,stdin.readline().split()) lis = [ [] for i in range(N) ] for i in range(M): u,v = map(int,stdin.readline().split()) u -= 1 v -= 1 lis[u].append(v) lis[v].append(u) s = [int(stdin.readline()) for i in range(N)] q = [] d = [float("inf")] * N for i in range(K): x = int(stdin.readline())-1 d[x] = 0 heapq.heappush(q , (s[x] , x) ) ans = 0 fix = [-1] * N while q: cd,v = heapq.heappop(q) if fix[v] != -1 and fix[v] < cd: continue for nex in lis[v]: if d[nex] == float("inf"): d[nex] = cd heapq.heappush(q , (cd+s[nex],nex)) elif cd < d[nex]+P and fix[nex] == -1: ans += 1 d[nex] = -1 fix[nex] = cd print (ans)