結果
問題 | No.179 塗り分け |
ユーザー |
|
提出日時 | 2019-01-03 17:48:22 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 1,833 ms / 3,000 ms |
コード長 | 902 bytes |
コンパイル時間 | 142 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 11,008 KB |
最終ジャッジ日時 | 2024-11-23 22:33:18 |
合計ジャッジ時間 | 12,881 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 6 |
other | AC * 40 |
ソースコード
# -*- coding: utf-8 -*- from copy import deepcopy h,w = map(int, input().split()) s = [list(input()) for _ in range(h)] def check(dh,dw): s2 = deepcopy(s) cnt = 0 for hi in range(h): for wi in range(w): if s2[hi][wi]=="#": cnt += 1 if h>hi+dh>=0 and w>wi+dw>=0: if s2[hi+dh][wi+dw]=="#": s2[hi][wi] = "r" s2[hi+dh][wi+dw] = "b" else: return False else: return False return True black = [] for hi in range(h): for wi in range(w): if s[hi][wi]=="#": black.append((hi,wi)) if len(black)>0: hi,wi = black[0] for i in range(1,len(black)): hi2,wi2 = black[i] if check(hi2-hi, wi2-wi): print("YES") exit() print("NO")