結果

問題 No.3710 Universal Tiles
コンテスト
ユーザー Tuchmos
提出日時 2026-09-16 13:00:07
言語 PyPy3
(7.3.23 + ACL)
コンパイル:
pypy3 -mpy_compile _filename_
実行:
pypy3 _filename_
結果
TLE  
実行時間 -
コード長 803 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 71 ms
コンパイル使用メモリ 80,972 KB
実行使用メモリ 85,760 KB
最終ジャッジ日時 2026-09-16 13:00:23
合計ジャッジ時間 16,047 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge2_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 29 TLE * 3
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

N,M=map(int,input().split())
l=[]
for i in range(N):
    S=[list(input()) for i in range(M)]
    l.append(S)

def to_base(n,base,leng):
    digit='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
    if n==0:
        return '0'*leng
    res=[]
    while n:
        res.append(digit[n%base])
        n//=base
    res+=['0']*(max(0,leng-len(res)))
    return ''.join(res[::-1])

#左90°回転
def rot(S):
    return [list(r) for r in zip(*S)][::-1]

ans=10**18
for n in range(4**N):
    cur=[[False]*M for i in range(M)]
    b=to_base(n,4,N)
    for j in range(N):
        G=l[j]
        for _ in range(int(b[j])):
            G=rot(G)
        for r in range(M):
            for c in range(M):
                if G[r][c]=='#':
                    cur[r][c]=True
    ans=min(ans,sum(sum(v) for v in cur))

print(ans)
0