結果
問題 |
No.942 プレゼント配り
|
ユーザー |
|
提出日時 | 2019-12-05 00:42:56 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 763 bytes |
コンパイル時間 | 185 ms |
コンパイル使用メモリ | 82,056 KB |
実行使用メモリ | 117,056 KB |
最終ジャッジ日時 | 2024-12-14 17:07:00 |
合計ジャッジ時間 | 3,585 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 11 WA * 5 RE * 2 |
ソースコード
import sys N, K = map(int, input().split()) if N * (N + 1) // 2 % K != 0: print('No') sys.exit() if N // K % 2 == 1: a = [] for i in range(N // K): a.append([j+1 for j in range(K * i, K * (i + 1))]) i = 0 j = len(a) - 1 ans = [[] for i in range(K)] while (j - i + 1) % K != 0: for k in range(K): ans[k].append(a[i][k]) ans[k].append(a[j][-1 - k]) i += 1 j -= 1 for k in range(i, j + 1): for l in range(K): ans[l].append(a[k][(l + k) % K]) for k in range(K): print(*ans[k]) elif N // K % 2 == 0: print('Yes') a = [] for i in range(N // 2): a.append(i) a.append(N - 1 - i) for i in range(K): b = [] for j in range(N // K): b.append(a[i * N // K + j] + 1) print(*b)