結果

問題 No.401 数字の渦巻き
ユーザー jamad
提出日時 2017-08-23 05:40:14
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
TLE  
実行時間 -
コード長 742 bytes
コンパイル時間 110 ms
コンパイル使用メモリ 12,800 KB
実行使用メモリ 24,520 KB
最終ジャッジ日時 2024-10-15 04:42:30
合計ジャッジ時間 6,625 ms
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other TLE * 1 -- * 29
権限があれば一括ダウンロードができます

ソースコード

diff #

N=int(input())
#A=[[0]*N]*N
A=[[0 for _ in range(N)] for _ in range(N)] 

def swirl(c,A,N):
    for j in range(N):
        A[i][j+i]=c
        c+=1
    
    A=[list(d) for d in list(zip(*A))[::-1]]# ccw rotation
    for j in range(1,N):
        A[i][j+i]=c
        c+=1
        
    A=[list(d) for d in list(zip(*A))[::-1]]# ccw rotation
    for j in range(1,N):
        A[i][j+i]=c
        c+=1
        
    A=[list(d) for d in list(zip(*A))[::-1]]
    for j in range(1,N-1):
        A[i][j+i]=c
        c+=1
    A=[list(d) for d in list(zip(*A))[::-1]]
    return A


c=0
i=0
M=N
while c<=N*N:
    A=swirl(c,A,M)
    i+=1
    c+=(N-1)*4
    M-=2
#C=list(zip(*A))
for a in A:
    for x in a:
        print('%03d'%(x+1),end=' ')
    print()

0