結果

問題 No.1357 Nada junior high school entrance examination 3rd day
ユーザー lam6er
提出日時 2025-04-15 22:34:29
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 923 bytes
コンパイル時間 209 ms
コンパイル使用メモリ 82,568 KB
実行使用メモリ 77,304 KB
最終ジャッジ日時 2025-04-15 22:36:04
合計ジャッジ時間 2,948 ms
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other WA * 21
権限があれば一括ダウンロードができます

ソースコード

diff #

MOD = 998244353

def main():
    import sys
    K = int(sys.stdin.readline())
    max_n = 2 * K
    # Precompute factorial and inverse factorial modulo MOD
    factorial = [1] * (max_n + 1)
    for i in range(1, max_n + 1):
        factorial[i] = factorial[i-1] * i % MOD
    inv_fact = [1] * (max_n + 1)
    inv_fact[max_n] = pow(factorial[max_n], MOD-2, MOD)
    for i in range(max_n-1, -1, -1):
        inv_fact[i] = inv_fact[i+1] * (i+1) % MOD
    
    c = [0] * (2*K + 1)
    for a in range(1, K+1):
        two_a = 2 * a
        # Compute C(2a, a)
        C = factorial[two_a] * inv_fact[a] % MOD
        C = C * inv_fact[a] % MOD
        denominator = (two_a + 1) * C % MOD
        inv_den = pow(denominator, MOD-2, MOD)
        c[two_a] = (c[two_a] + inv_den) % MOD
    
    output = []
    for i in range(2*K + 1):
        output.append(str(c[i]))
    print(' '.join(output))

if __name__ == '__main__':
    main()
0