結果
問題 | No.179 塗り分け |
ユーザー |
![]() |
提出日時 | 2015-08-26 17:21:56 |
言語 | Python2 (2.7.18) |
結果 |
AC
|
実行時間 | 939 ms / 3,000 ms |
コード長 | 630 bytes |
コンパイル時間 | 590 ms |
コンパイル使用メモリ | 6,784 KB |
実行使用メモリ | 6,400 KB |
最終ジャッジ日時 | 2024-07-23 14:32:09 |
合計ジャッジ時間 | 10,841 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 6 |
other | AC * 40 |
ソースコード
def check(di,dj): flag = [[True for i in xrange(W)] for i in xrange(H)] for i in xrange(H): for j in xrange(W): if M[i][j] == "#" and flag[i][j]: ni = i + di nj = j + dj if 0 <= ni < H and 0 <= nj < W and M[ni][nj] == "#": flag[ni][nj] = False else: return False return True H,W = map(int,raw_input().split(" ")) M = [list(raw_input()) for i in xrange(H)] if sum(1 for i in xrange(H*W) if M[i/W][i%W] == "#") == 0: print "NO" quit() for j in xrange(1,W): if check(0,j): print "YES" quit() for i in xrange(1,H): for j in xrange(-W+1,W): if check(i,j): print "YES" quit() print "NO"