結果
| 問題 |
No.17 2つの地点に泊まりたい
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-07-18 08:28:50 |
| 言語 | Python2 (2.7.18) |
| 結果 |
AC
|
| 実行時間 | 77 ms / 5,000 ms |
| コード長 | 504 bytes |
| コンパイル時間 | 58 ms |
| コンパイル使用メモリ | 6,784 KB |
| 実行使用メモリ | 6,272 KB |
| 最終ジャッジ日時 | 2024-10-15 01:35:30 |
| 合計ジャッジ時間 | 1,886 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 27 |
ソースコード
#coding: utf-8
#yuki_17
INF=float("inf")
n=int(raw_input())
s=[int(raw_input()) for i in xrange(n)]
m=int(raw_input())
d=[[INF for i in xrange(n)] for j in xrange(n)]
for i 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])
res=INF
for i in xrange(1,n-1):
for j in xrange(1,n-1):
if i==j:
continue
cost=d[0][i]+d[i][j]+d[j][n-1]+s[i]+s[j]
res=min(res,cost)
print res