結果

問題 No.2023 Tiling is Fun
ユーザー atjh16
提出日時 2022-08-12 09:42:37
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 33 ms / 2,000 ms
コード長 632 bytes
コンパイル時間 1,973 ms
コンパイル使用メモリ 192,004 KB
最終ジャッジ日時 2025-01-30 20:24:06
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 18
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
using namespace std;

long long a, b, m;
const long long M = 998244353;
long long p[200001], q[200001];

long long powm(long long a, long long b) {
    long long u = 1, v = a;

    while (b > 0) {
        if (b & 1)
            u = u * v % M;

        b >>= 1;
        v = v * v % M;
    }

    return u;
}

int main() {    
    cin >> a >> b;

    p[0] = 1;
    q[0] = 1;

    for (int i = 1; i <= a + b; i++) {
        p[i] = p[i - 1] * i % M;
        q[i] = powm(p[i], M - 2);
    }

    for (int i = 0; i < b; i++)
        m = (m + p[a - 2 + i] * q[i] % M * q[a - 2] % M) % M;

    cout << m << endl;
}
0