結果
| 問題 |
No.1028 闇討ち
|
| コンテスト | |
| ユーザー |
vwxyz
|
| 提出日時 | 2024-07-17 05:34:28 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 390 ms / 2,000 ms |
| コード長 | 647 bytes |
| コンパイル時間 | 196 ms |
| コンパイル使用メモリ | 82,320 KB |
| 実行使用メモリ | 132,352 KB |
| 最終ジャッジ日時 | 2024-07-17 05:34:35 |
| 合計ジャッジ時間 | 5,254 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 20 |
ソースコード
N=int(input())
A=[list(map(int,input().split())) for i in range(N)]
idx=[[] for a in range(N)]
for i in range(N):
for j in range(N):
A[i][j]-=1
idx[A[i][j]].append((i,j))
ans=N*(N-1)//2*N
for a in range(N):
imos=[0]*(N+2)
for i,j in idx[a]:
l,r=i-j,i+j
if 0<l:
imos[0]+=l
imos[1]-=l
imos[1]+=-1
imos[l+1]-=-1
if r<N-1:
imos[r+1]+=1
imos[N]-=1
imos[N]+=-(N-r-1)
imos[N+1]-=-(N-r-1)
for _ in range(2):
for i in range(1,N+2):
imos[i]+=imos[i-1]
ans+=min(imos[:N])
print(ans)
vwxyz