結果
問題 | No.157 2つの空洞 |
ユーザー | roiti46 |
提出日時 | 2015-02-26 23:32:55 |
言語 | Python2 (2.7.18) |
結果 |
AC
|
実行時間 | 44 ms / 2,000 ms |
コード長 | 675 bytes |
コンパイル時間 | 138 ms |
コンパイル使用メモリ | 6,940 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-06-23 21:38:20 |
合計ジャッジ時間 | 1,330 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 16 |
ソースコード
dxy = zip([1,0,-1,0],[0,1,0,-1]) def rec(x,y,cnt): C[y][x] = str(cnt) for dx,dy in dxy: nx,ny = x+dx,y+dy if 0 <= nx < W and 0 <= ny < H and C[ny][nx] == ".": rec(nx,ny,cnt) W,H = map(int,raw_input().split()) C = [list(raw_input()) for i in xrange(H)] cnt = 0 for y in xrange(H): for x in xrange(W): if C[y][x] == ".": rec(x,y,cnt) cnt += 1 ans = 100000 for y1 in xrange(H): for x1 in xrange(W): for y2 in xrange(H): for x2 in xrange(W): if C[y1][x1] == "0" and C[y2][x2] == "1": ans = min(ans, abs(x1-x2)+abs(y1-y2)) print ans-1