結果
問題 |
No.1065 電柱 / Pole (Easy)
|
ユーザー |
![]() |
提出日時 | 2020-05-30 18:57:35 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
TLE
|
実行時間 | - |
コード長 | 818 bytes |
コンパイル時間 | 160 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 92,328 KB |
最終ジャッジ日時 | 2024-11-07 22:56:05 |
合計ジャッジ時間 | 6,752 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 1 TLE * 1 -- * 44 |
ソースコード
import sys input=sys.stdin.readline sys.setrecursionlimit(10**6) import heapq ans=2<<28 def dfs(G,v,used,goal,cost): global ans if v==goal: ans=min(ans,cost) return used[v]=True for i in G[v]: if used[i[1]]: continue dfs(G,i[1],used,goal,cost+i[0]) used[v]=False def main(): n,m=map(int,input().split()) x,y=map(int,input().split()) x,y=x-1,y-1 l=[tuple(int(i) for i in input().split()) for _ in range(n)] g=[[] for _ in range(n)] visited=[False]*n for _ in range(m): p,q=map(int,input().split()) p,q=p-1,q-1 dis=((l[q][0]-l[p][0])**2+(l[q][1]-l[p][1])**2)**0.5 g[p].append((dis,q)) g[q].append((dis,p)) dfs(g,x,visited,y,0) print(ans) if __name__=="__main__": main()