結果

問題 No.17 2つの地点に泊まりたい
ユーザー roiti46
提出日時 2015-02-16 01:10:53
言語 Python2
(2.7.18)
結果
AC  
実行時間 79 ms / 5,000 ms
コード長 562 bytes
コンパイル時間 88 ms
コンパイル使用メモリ 6,912 KB
実行使用メモリ 6,400 KB
最終ジャッジ日時 2024-10-15 01:19:12
合計ジャッジ時間 1,839 ms
ジャッジサーバーID
(参考情報)
judge4 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 27
権限があれば一括ダウンロードができます

ソースコード

diff #

inf = 1 << 28

N = int(raw_input())
S = [int(raw_input()) for i in xrange(N)]
M = int(raw_input())
d = [[inf]*N for i in xrange(N)]
for i in xrange(N): d[i][i] = 0
for loop in xrange(M):
    A,B,C = map(int,raw_input().split())
    d[A][B] = d[B][A] = C
    
for k in xrange(N):
    for i in xrange(N):
        for j in xrange(N):
            d[i][j] = min(d[i][j], d[i][k]+d[k][j])
ans = inf
for i in xrange(1,N-1):
    for j in xrange(1,N-1):
        if i == j: continue
        cost = S[i]+S[j]+d[0][i]+d[i][j]+d[j][N-1]
        ans = min(ans, cost)
print ans
0