結果
問題 | No.2023 Tiling is Fun |
ユーザー |
|
提出日時 | 2024-11-12 11:36:40 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 22 ms / 2,000 ms |
コード長 | 722 bytes |
コンパイル時間 | 2,143 ms |
コンパイル使用メモリ | 167,288 KB |
実行使用メモリ | 19,072 KB |
最終ジャッジ日時 | 2024-11-12 11:36:44 |
合計ジャッジ時間 | 3,817 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 18 |
ソースコード
#include<bits/stdc++.h> #define int long long using namespace std; const int mo=998244353; int n,m; long long jc[1000001],inv[1000001]; inline long long ksm(long long x,long long y){if (mo==1) return 0; long long ans=1;for (int i=0;(y>>i);++i){if (y>>i&1) ans=ans*x%mo; x=x*x%mo;}return ans;} inline long long invv(long long x){return ksm(x,mo-2);} inline void init(int x){jc[0]=1; for (int i=1;i<=x;++i) jc[i]=jc[i-1]*i%mo;inv[x]=invv(jc[x]); for (int i=x-1;i>=0;--i) inv[i]=inv[i+1]*(i+1)%mo;} inline long long C(long long x,long long y){if (x<y || y<0) return 0;return jc[x]*inv[y]%mo*inv[x-y]%mo;} signed main(){ ios::sync_with_stdio(false),cin.tie(0); init(1e6); cin>>n>>m; cout<<C(m+n-2,n-1)<<'\n'; return 0; }