結果

問題 No.179 塗り分け
ユーザー aka_satana_haaka_satana_ha
提出日時 2017-11-25 20:28:15
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
TLE  
実行時間 -
コード長 1,107 bytes
コンパイル時間 148 ms
コンパイル使用メモリ 12,544 KB
実行使用メモリ 16,256 KB
最終ジャッジ日時 2024-11-27 10:07:04
合計ジャッジ時間 9,164 ms
ジャッジサーバーID
(参考情報)
judge1 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 6
other AC * 39 TLE * 1
権限があれば一括ダウンロードができます

ソースコード

diff #

H,W = [int(i) for i in input().split()]

mass = []
for i in range(H):
    mass.append(input())

black = [[False for i in range(W)] for j in range(H)]
black_count = 0
black_mass = []
for i in range(H):
    for j in range(W):
        if mass[i][j]=="#":
            black[i][j]=True
            black_mass.append([i,j])
            black_count+=1
        else:
            black[i][j]=False

ans=False
if len(black_mass)!=0:
    ref_point=black_mass[0]
for move_point in black_mass:
    if move_point == ref_point:
        continue
    paired_mass=[]
    paired_mass.append(ref_point)
    paired_mass.append(move_point)
    diff=[move_point[0]-ref_point[0],move_point[1]-ref_point[1]]
    for test_point in black_mass:
        if(test_point in paired_mass):
            continue
        tmp_add=[test_point[0]+diff[0],test_point[1]+diff[1]]
        if(not(tmp_add in black_mass) or tmp_add in paired_mass):
            break
        paired_mass.append(test_point)
        paired_mass.append(tmp_add)
    if len(paired_mass)==len(black_mass):
        ans=True
        break

print("YES" if ans==True else "NO")
0