結果
問題 | No.707 書道 |
ユーザー |
![]() |
提出日時 | 2018-08-03 05:38:52 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 115 ms / 2,000 ms |
コード長 | 762 bytes |
コンパイル時間 | 198 ms |
コンパイル使用メモリ | 12,928 KB |
実行使用メモリ | 11,008 KB |
最終ジャッジ日時 | 2024-09-19 17:19:37 |
合計ジャッジ時間 | 996 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 6 |
ソースコード
from math import sqrtdef sum_dist(H: int, W: int, st: tuple) -> int:global Pdist = 0for w in range(1,W+1):for h in range(1,H+1):if P[h-1][w-1] == 1:dist += sqrt((st[0]-w)**2 + (st[1]-h)**2)return distH,W = map(int, input().split())P = []for i in range(H):P.append([int(p) for p in list(input().rstrip())])INF = float("inf")ans = INFfor w in range(1,W+1):ans_temp = sum_dist(H,W,(w,0))ans = min(ans, ans_temp)ans_temp = sum_dist(H,W,(w,H+1))ans = min(ans, ans_temp)for h in range(1,H+1):ans_temp = sum_dist(H,W,(0,h))ans = min(ans, ans_temp)ans_temp = sum_dist(H,W,(W+1,h))ans = min(ans, ans_temp)print(ans)