Submission #36275343
Source Code Expand
#include<bits/stdc++.h>
using namespace std;
namespace acah
{
constexpr int maxn = 1e7 + 7;
constexpr int p = 998244353;
int N, M, ans, fac[maxn << 1], inv[maxn << 1], pf[maxn / 3];
inline int C(int n, int m) {return 1ll * fac[n] * inv[m] % p * inv[n - m] % p;}
int work()
{
ios::sync_with_stdio(false), cin.tie(nullptr);
cin >> N >> M;
*fac = 1;
for(int i = 1; i <= N + M; i++) fac[i] = 1ll * fac[i - 1] * i % p;
for(int t = inv[N + M] = fac[N + M], x = p - 3; x; t = 1ll * t * t % p, x >>= 1)
if(x & 1) inv[N + M] = 1ll * inv[N + M] * t % p;
for(int i = N + M - 1; ~i; i--) inv[i] = 1ll * inv[i + 1] * (i + 1) % p;
*pf = 1;
for(int i = 1; i <= M / 3; i++)
pf[i] = pf[i - 1] + C(N + i - 1, N - 1), pf[i] -= (pf[i] >= p ? p : 0);
for(int fs = 0, t; fs < 3; fs++) for(int cnt = N - 1; ~cnt; cnt--) {
if((t = fs + (N - 1) * 2 - cnt) > M) break;
ans += 1ll * pf[(M - t) / 3] * C(N - 1, cnt) % p, ans -= (ans >= p ? p : 0);
}
cout << ans;
return 0;
}
}
int main() {return acah::work();}
Submission Info
| Submission Time | |
|---|---|
| Task | G - Count Sequences |
| User | whhsteven |
| Language | C++ (GCC 9.2.1) |
| Score | 600 |
| Code Size | 1088 Byte |
| Status | AC |
| Exec Time | 289 ms |
| Memory | 172920 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 600 / 600 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 01_smallNM_00.txt, 01_smallNM_01.txt, 01_smallNM_02.txt, 01_smallNM_03.txt, 01_smallNM_04.txt, 01_smallNM_05.txt, 01_smallNM_06.txt, 01_smallNM_07.txt, 01_smallNM_08.txt, 01_smallNM_09.txt, 01_smallNM_10.txt, 01_smallNM_11.txt, 02_smallN_00.txt, 02_smallN_01.txt, 02_smallN_02.txt, 02_smallN_03.txt, 02_smallN_04.txt, 02_smallN_05.txt, 02_smallN_06.txt, 03_rnd_00.txt, 03_rnd_01.txt, 03_rnd_02.txt, 03_rnd_03.txt, 03_rnd_04.txt, 03_rnd_05.txt, 03_rnd_06.txt, 03_rnd_07.txt, 04_max_00.txt, 04_max_01.txt, 04_max_02.txt, 04_max_03.txt, 04_max_04.txt, 04_max_05.txt, 04_max_06.txt, 04_max_07.txt, 04_max_08.txt, 04_max_09.txt, 04_max_10.txt, 04_max_11.txt, 04_max_12.txt, 04_max_13.txt, 04_max_14.txt, 04_max_15.txt, 04_max_16.txt, 04_max_17.txt, 04_max_18.txt, 04_max_19.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_00.txt | AC | 6 ms | 3664 KiB |
| 00_sample_01.txt | AC | 155 ms | 94740 KiB |
| 01_smallNM_00.txt | AC | 2 ms | 3612 KiB |
| 01_smallNM_01.txt | AC | 2 ms | 3536 KiB |
| 01_smallNM_02.txt | AC | 4 ms | 3604 KiB |
| 01_smallNM_03.txt | AC | 2 ms | 3528 KiB |
| 01_smallNM_04.txt | AC | 2 ms | 3492 KiB |
| 01_smallNM_05.txt | AC | 3 ms | 3544 KiB |
| 01_smallNM_06.txt | AC | 2 ms | 3592 KiB |
| 01_smallNM_07.txt | AC | 2 ms | 3584 KiB |
| 01_smallNM_08.txt | AC | 2 ms | 3532 KiB |
| 01_smallNM_09.txt | AC | 2 ms | 3532 KiB |
| 01_smallNM_10.txt | AC | 2 ms | 3584 KiB |
| 01_smallNM_11.txt | AC | 2 ms | 3552 KiB |
| 02_smallN_00.txt | AC | 155 ms | 94632 KiB |
| 02_smallN_01.txt | AC | 150 ms | 94672 KiB |
| 02_smallN_02.txt | AC | 153 ms | 94684 KiB |
| 02_smallN_03.txt | AC | 151 ms | 94740 KiB |
| 02_smallN_04.txt | AC | 153 ms | 94736 KiB |
| 02_smallN_05.txt | AC | 149 ms | 94696 KiB |
| 02_smallN_06.txt | AC | 149 ms | 94804 KiB |
| 03_rnd_00.txt | AC | 169 ms | 104916 KiB |
| 03_rnd_01.txt | AC | 107 ms | 57504 KiB |
| 03_rnd_02.txt | AC | 113 ms | 69816 KiB |
| 03_rnd_03.txt | AC | 255 ms | 128996 KiB |
| 03_rnd_04.txt | AC | 107 ms | 64456 KiB |
| 03_rnd_05.txt | AC | 221 ms | 111276 KiB |
| 03_rnd_06.txt | AC | 139 ms | 85496 KiB |
| 03_rnd_07.txt | AC | 96 ms | 49376 KiB |
| 04_max_00.txt | AC | 281 ms | 172900 KiB |
| 04_max_01.txt | AC | 289 ms | 133752 KiB |
| 04_max_02.txt | AC | 218 ms | 114268 KiB |
| 04_max_03.txt | AC | 186 ms | 104548 KiB |
| 04_max_04.txt | AC | 171 ms | 99668 KiB |
| 04_max_05.txt | AC | 276 ms | 172812 KiB |
| 04_max_06.txt | AC | 277 ms | 172804 KiB |
| 04_max_07.txt | AC | 277 ms | 172812 KiB |
| 04_max_08.txt | AC | 279 ms | 172788 KiB |
| 04_max_09.txt | AC | 280 ms | 172868 KiB |
| 04_max_10.txt | AC | 278 ms | 172808 KiB |
| 04_max_11.txt | AC | 276 ms | 172808 KiB |
| 04_max_12.txt | AC | 277 ms | 172836 KiB |
| 04_max_13.txt | AC | 278 ms | 172812 KiB |
| 04_max_14.txt | AC | 279 ms | 172856 KiB |
| 04_max_15.txt | AC | 277 ms | 172872 KiB |
| 04_max_16.txt | AC | 280 ms | 172748 KiB |
| 04_max_17.txt | AC | 277 ms | 172868 KiB |
| 04_max_18.txt | AC | 280 ms | 172920 KiB |
| 04_max_19.txt | AC | 278 ms | 172916 KiB |