結果
| 問題 |
No.1492 01文字列と転倒
|
| コンテスト | |
| ユーザー |
penguinman
|
| 提出日時 | 2021-04-26 00:51:42 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 526 bytes |
| コンパイル時間 | 145 ms |
| コンパイル使用メモリ | 12,800 KB |
| 実行使用メモリ | 43,168 KB |
| 最終ジャッジ日時 | 2024-07-04 09:41:06 |
| 合計ジャッジ時間 | 5,601 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | TLE * 1 -- * 21 |
ソースコード
N, M = map(int, input().split())
dp = [[[0 for i in range(N*N+1)]for j in range(N+1)]for k in range(2)]
dp[0][0][0] = 1
for i in range(N):
for j in range(min(N+1,i+2)):
for k in range(min(N*(N-1)//2, (i+2)*(i+1)//2)+1):
f = (i+1)&1
g = 1-f
dp[f][j][k] = 0
if 0 < j:
dp[f][j][k] += dp[f][j-1][k]
if j <= i and j <= k:
dp[f][j][k] += dp[g][j][k-j]
dp[f][j][k] %= M
for i in range(N*N+1):
print(dp[N%2][N][i])
penguinman