結果
問題 |
No.2130 分配方法の数え上げ mod 998244353
|
ユーザー |
![]() |
提出日時 | 2022-11-25 23:55:06 |
言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 17 ms / 2,000 ms |
コード長 | 367 bytes |
コンパイル時間 | 839 ms |
コンパイル使用メモリ | 82,308 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-10-02 06:21:58 |
合計ジャッジ時間 | 1,935 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 38 |
ソースコード
#include <iostream> using namespace std; #include <atcoder/modint> using mint = atcoder::modint998244353; int main() { long long N, M; cin >> N >> M; if (N < M) { puts("0"); return 0; } mint ret = mint(2).pow(N), tmp = 1; for (int t = 0; t < M; ++t) ret -= tmp, tmp = tmp / (t + 1) * (N - t); cout << ret.val() << endl; }