結果
| 問題 |
No.2528 pop_(backfront or not)
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2023-12-01 18:06:11 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
RE
|
| 実行時間 | - |
| コード長 | 1,359 bytes |
| コンパイル時間 | 244 ms |
| コンパイル使用メモリ | 12,928 KB |
| 実行使用メモリ | 136,832 KB |
| 最終ジャッジ日時 | 2024-09-26 15:46:46 |
| 合計ジャッジ時間 | 6,260 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 11 RE * 8 |
ソースコード
class Input_kyopro:
def II(self): return int(input())
def MI(self): return map(int,input().split())
def MS(self): return map(str,input().split())
def LMI(self): return list(self.MI())
def LMS(self): return list(self.MS())
def LLI(self,N): return [self.LMI() for _ in range(N)]
def LLS(self,N): return [self.LMS() for _ in range(N)]
def LS(self,N): return [input() for _ in range(N)]
def LSL(self,N): return [list(input()) for _ in range(N)]
def LI(self,N): return [self.II() for _ in range(N)]
I=Input_kyopro()
#入力
N=int(input())
Mod=998244353
memo=[[-1]*(2*N+1) for _ in range(2*N+1)]
def saiki(l,r):
if memo[l][r]!=-1:
return memo[l][r]
if (l,r)==(0,0):
return 1
if l==0 and r!=0:
return 0
if l!=0 and r==0:
return 0
if l>=2 and r>=2:
memo[l][r]=saiki(l-1,r-1)*(1+(l-1)*(r-1))+saiki(l-2,r)*(l-2)*(l-1)//2+saiki(l,r-2)*(r-2)*(r-1)//2
memo[l][r]%=Mod
return memo[l][r]
if l>=2:
memo[l][r]=saiki(l-1,r-1)+saiki(l-2,r)*(l-2)*(l-1)//2
memo[l][r]%=Mod
return memo[l][r]
if r>=2:
memo[l][r]=saiki(l-1,r-1)+saiki(l,r-2)*(r-2)*(r-1)//2
memo[l][r]%=Mod
return memo[l][r]
memo[l][r]=saiki(l-1,r-1)
memo[l][r]%=Mod
return memo[l][r]
for k in range(2*N+1):
print(saiki(k,2*N-k))