Submission #27451237


Source Code Expand

Copy
#
#
#https://qiita.com/kazukazukazukazu/items/e5db00a3aefb1f5ed72f
#https://sepat.hatenablog.com/entry/2019/08/15/223212
inf = float('inf')
class BellmanFord():
def __init__(self, N):
self.N = N
self.edges = []
def add(self, u, v, d, directed=False):
"""
u = from, v = to, d = cost
directed = True
"""
if directed is False:
self.edges.append([u, v, d])
self.edges.append([v, u, d])
else:
self.edges.append([u, v, d])
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#ベルマンフォード負経路検出版
#参考(二つの内容を合わせた)
#https://qiita.com/kazukazukazukazu/items/e5db00a3aefb1f5ed72f
#https://sepat.hatenablog.com/entry/2019/08/15/223212

inf = float('inf')
class BellmanFord():
    def __init__(self, N):
        self.N = N
        self.edges = []

    def add(self, u, v, d, directed=False):
        """
        u = from, v = to, d = cost
        directed = Trueのとき、有向グラフである。
        """
        if directed is False:
            self.edges.append([u, v, d])
            self.edges.append([v, u, d])
        else:
            self.edges.append([u, v, d])


    def BellmanFord_search(self, start):
        """
        :param s: 始点
        :return: d[i] 始点sから各点iまでの最短経路
        """
        #  infならたどり着けず
        # -infなら"通りたいパスに"負の閉路が存在する
        D = [inf for i in range(self.N)]
        D[start] = 0
        for i in range(self.N*2):
            for u,v,d in self.edges:
                if D[v] > D[u] + d:
                    D[v] = D[u] + d
                    #2巡目負経路が存在する場合の動き
                    if i>=self.N:
                        D[v]=-inf
        return D

N,M = map(int, input().split())
ABC = [list(map(int, input().split())) for _ in range(M)]
graph = BellmanFord(N)
for a,b,c in ABC:
    graph.add(a-1,b-1,-c,True)
d = graph.BellmanFord_search(0)
if d[N-1]==-inf:
    print('inf')
else:
    print(-d[N-1])

Submission Info

Submission Time
Task D - Score Attack
User H20
Language PyPy3 (7.3.0)
Score 400
Code Size 1581 Byte
Status AC
Exec Time 194 ms
Memory 75156 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 3
AC × 30
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_1.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_2.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt
Case Name Status Exec Time Memory
sample_01.txt AC 194 ms 61496 KB
sample_02.txt AC 52 ms 61508 KB
sample_03.txt AC 51 ms 61528 KB
subtask_1_1.txt AC 78 ms 73148 KB
subtask_1_10.txt AC 60 ms 65792 KB
subtask_1_11.txt AC 85 ms 73760 KB
subtask_1_12.txt AC 137 ms 75100 KB
subtask_1_13.txt AC 60 ms 70088 KB
subtask_1_14.txt AC 128 ms 74348 KB
subtask_1_15.txt AC 183 ms 75156 KB
subtask_1_16.txt AC 50 ms 61924 KB
subtask_1_17.txt AC 60 ms 66424 KB
subtask_1_18.txt AC 116 ms 75048 KB
subtask_1_19.txt AC 125 ms 74760 KB
subtask_1_2.txt AC 103 ms 73932 KB
subtask_1_20.txt AC 64 ms 73088 KB
subtask_1_21.txt AC 95 ms 73704 KB
subtask_1_22.txt AC 187 ms 75088 KB
subtask_1_23.txt AC 53 ms 61940 KB
subtask_1_24.txt AC 122 ms 74896 KB
subtask_1_25.txt AC 96 ms 74232 KB
subtask_1_26.txt AC 131 ms 74520 KB
subtask_1_27.txt AC 140 ms 74504 KB
subtask_1_3.txt AC 87 ms 73856 KB
subtask_1_4.txt AC 106 ms 73860 KB
subtask_1_5.txt AC 92 ms 73544 KB
subtask_1_6.txt AC 126 ms 74168 KB
subtask_1_7.txt AC 96 ms 74288 KB
subtask_1_8.txt AC 103 ms 73940 KB
subtask_1_9.txt AC 49 ms 61944 KB


2025-03-27 (Thu)
05:08:01 +00:00