結果
| 問題 |
No.401 数字の渦巻き
|
| コンテスト | |
| ユーザー |
osrgy01
|
| 提出日時 | 2021-04-06 13:56:03 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
AC
|
| 実行時間 | 37 ms / 2,000 ms |
| コード長 | 803 bytes |
| コンパイル時間 | 458 ms |
| コンパイル使用メモリ | 12,416 KB |
| 実行使用メモリ | 10,496 KB |
| 最終ジャッジ日時 | 2025-01-03 03:19:33 |
| 合計ジャッジ時間 | 2,743 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 30 |
ソースコード
n=int(input())
xy=[[-1]*n for _ in range(n)]
d=0
y,x=0,0
cnt=1
xy[0][0]=cnt
while d<n**2:
if d%4==0:
if 0<=x+1<n and xy[y][x+1]==-1:
cnt+=1
xy[y][x+1]=cnt
x+=1
else:
d+=1
elif d%4==1:
if 0<=y+1<n and xy[y+1][x]==-1:
cnt+=1
xy[y+1][x]=cnt
y+=1
else:
d+=1
elif d%4==2:
if 0<=x-1<n and xy[y][x-1]==-1:
cnt+=1
xy[y][x-1]=cnt
x-=1
else:
d+=1
elif d%4==3:
if 0<=y-1<n and xy[y-1][x]==-1:
cnt+=1
xy[y-1][x]=cnt
y-=1
else:
d+=1
for i in range(n):
for j in range(n):
print(f'{xy[i][j]:03d}',end=' ')
print()
osrgy01