| 15455 | 2025-02-19 17:17:51 | Ablablabla | Autópálya infláció | pypy3 | Runtime error 15/100 | 782ms | 131072 KiB |
import sys
import heapq
from decimal import Decimal, getcontext
INF = -1
MOD = int(1e9 + 7)
n, m = map(int, input().split())
csucsok = [[] for _ in range(n)]
hossz = [[] for _ in range(n)]
for _ in range(m):
a, b, c = map(int, input().split())
a -= 1
b -= 1
csucsok[a].append(b)
hossz[a].append(c)
csucsok[b].append(a)
hossz[b].append(c)
class Comp:
def __init__(self, ans, mely):
self.ans = ans
self.mely = mely
def __call__(self, a, b):
if self.ans[a] == self.ans[b]:
return self.mely[a] > self.mely[b]
return self.ans[a] > self.ans[b]
bejar = []
ans = [INF] * n
ans[0] = 0
heapq.heappush(bejar, (ans[0], 0))
bejart = [False] * n
opciok = [[INF] * (n + 2) for _ in range(n)]
opciok[0][1] = 0
mely = [0] * n
while bejar:
akt = heapq.heappop(bejar)[1]
if bejart[akt]:
continue
#print(akt);
bejart[akt] = True
for i in range(len(csucsok[akt])):
kovi = csucsok[akt][i]
suly = hossz[akt][i]
if bejart[kovi]:
continue
for j in range(1, n + 1):
if opciok[akt][j] == -1:
continue
tav = opciok[akt][j] + suly * int(1 << (j - 1))
if(opciok[kovi][j + 1]) == -1:
opciok[kovi][j + 1] = tav;
else:
opciok[kovi][j + 1] = int(min(int(opciok[kovi][j + 1]), int(tav)))
if ans[kovi] > tav or ans[kovi] == -1:
mely[kovi] = j + 1
ans[kovi] = int(tav);
heapq.heappush(bejar, (int(ans[kovi]), kovi))
for i in range(1, n):
print(ans[i] % MOD)
| Subtask | Sum | Test | Verdict | Time | Memory | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Accepted | 78ms | 24228 KiB | ||||
| 2 | Runtime error | 782ms | 131072 KiB | ||||
| subtask2 | 0/8 | ||||||
| 3 | Accepted | 370ms | 98404 KiB | ||||
| 4 | Accepted | 351ms | 104912 KiB | ||||
| 5 | Runtime error | 527ms | 131072 KiB | ||||
| 6 | Accepted | 312ms | 98484 KiB | ||||
| 7 | Runtime error | 344ms | 131072 KiB | ||||
| subtask3 | 15/15 | ||||||
| 8 | Accepted | 86ms | 23732 KiB | ||||
| 9 | Accepted | 79ms | 23920 KiB | ||||
| 10 | Accepted | 87ms | 23712 KiB | ||||
| 11 | Accepted | 79ms | 24052 KiB | ||||
| 12 | Accepted | 89ms | 23708 KiB | ||||
| 13 | Accepted | 89ms | 23868 KiB | ||||
| 14 | Accepted | 81ms | 23864 KiB | ||||
| 15 | Accepted | 81ms | 23736 KiB | ||||
| 16 | Accepted | 87ms | 23732 KiB | ||||
| 17 | Accepted | 79ms | 23736 KiB | ||||
| 18 | Accepted | 86ms | 23840 KiB | ||||
| subtask4 | 0/34 | ||||||
| 19 | Accepted | 451ms | 100160 KiB | ||||
| 20 | Runtime error | 643ms | 131072 KiB | ||||
| 21 | Runtime error | 621ms | 131072 KiB | ||||
| 22 | Accepted | 442ms | 99176 KiB | ||||
| 23 | Accepted | 430ms | 99044 KiB | ||||
| 24 | Runtime error | 635ms | 131072 KiB | ||||
| 25 | Accepted | 446ms | 99560 KiB | ||||
| 26 | Accepted | 507ms | 100144 KiB | ||||
| 27 | Runtime error | 504ms | 131072 KiB | ||||
| 28 | Runtime error | 458ms | 131072 KiB | ||||
| 29 | Runtime error | 492ms | 131072 KiB | ||||
| 30 | Accepted | 497ms | 131008 KiB | ||||
| 31 | Accepted | 556ms | 130280 KiB | ||||
| 32 | Runtime error | 600ms | 131072 KiB | ||||
| 33 | Runtime error | 601ms | 131072 KiB | ||||
| subtask5 | 0/21 | ||||||
| 34 | Accepted | 155ms | 28708 KiB | ||||
| 35 | Wrong answer | 296ms | 31712 KiB | ||||
| 36 | Wrong answer | 195ms | 27300 KiB | ||||
| 37 | Wrong answer | 201ms | 28120 KiB | ||||
| 38 | Accepted | 189ms | 27620 KiB | ||||
| 39 | Accepted | 200ms | 27772 KiB | ||||
| 40 | Accepted | 407ms | 42904 KiB | ||||
| 41 | Accepted | 377ms | 41448 KiB | ||||
| 42 | Accepted | 119ms | 27632 KiB | ||||
| 43 | Accepted | 127ms | 27644 KiB | ||||
| 44 | Accepted | 115ms | 27880 KiB | ||||
| 45 | Accepted | 129ms | 27836 KiB | ||||
| 46 | Accepted | 134ms | 27624 KiB | ||||
| 47 | Accepted | 115ms | 26936 KiB | ||||
| 48 | Accepted | 152ms | 27628 KiB | ||||
| 49 | Accepted | 166ms | 28012 KiB | ||||
| subtask6 | 0/22 | ||||||
| 50 | Runtime error | 522ms | 131072 KiB | ||||
| 51 | Runtime error | 623ms | 131072 KiB | ||||
| 52 | Wrong answer | 446ms | 99460 KiB | ||||
| 53 | Wrong answer | 407ms | 99508 KiB | ||||
| 54 | Accepted | 407ms | 99808 KiB | ||||
| 55 | Accepted | 442ms | 99048 KiB | ||||
| 56 | Runtime error | 513ms | 131072 KiB | ||||
| 57 | Runtime error | 583ms | 131072 KiB | ||||
| 58 | Accepted | 163ms | 40596 KiB | ||||
| 59 | Runtime error | 467ms | 131072 KiB | ||||
| 60 | Runtime error | 472ms | 131072 KiB | ||||
| 61 | Runtime error | 490ms | 131072 KiB | ||||
| 62 | Runtime error | 503ms | 131072 KiB | ||||
| 63 | Runtime error | 560ms | 131072 KiB | ||||
| 64 | Runtime error | 593ms | 131072 KiB | ||||
| 65 | Runtime error | 584ms | 131072 KiB | ||||
| 66 | Runtime error | 593ms | 131072 KiB | ||||