結果
| 問題 | No.942 プレゼント配り |
| コンテスト | |
| ユーザー |
titia
|
| 提出日時 | 2019-12-05 02:11:00 |
| 言語 | Python3 (3.15.0 + numpy 2.5.4 + scipy 1.18.1 + ACL) |
| 結果 |
AC
不安定
|
| 実行時間 | 130 ms / 2,000 ms |
| + 315µs | |
| コード長 | 692 bytes |
| 記録 | |
| コンパイル時間 | 57 ms |
| コンパイル使用メモリ | 15,104 KB |
| 実行使用メモリ | 20,480 KB |
| 最終ジャッジ日時 | 2026-10-03 20:43:39 |
| 合計ジャッジ時間 | 3,112 ms |
|
ジャッジサーバーID (参考情報) |
judge3_0 / judge1_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 18 |
ソースコード
N,K=map(int,input().split())
if N==K==1:
print("Yes")
print(1)
exit()
if N*(N+1)//2%K!=0 or N==K:
print("No")
else:
ANS=[[0]*(N//K) for i in range(K)]
rest=N//K
col=0
if rest%2==1:
start=0
for i in range(K):
ANS[i][0]=1+i
for i in range(K):
ANS[(i+K//2)%K][1]=K+i+1
for i in range(K):
ANS[i][2]=3*(K*3+1)//2-ANS[i][0]-ANS[i][1]
col+=3
for i in range(K):
for j in range(col,rest):
if j%2==0:
ANS[i][j]=1+i+j*K
else:
ANS[i][j]=K-i+j*K
print("Yes")
for ans in ANS:
print(*ans)
titia