Submission #1543196
Source Code Expand
#include <bits/stdc++.h> using ll = long long; using ld = long double; using namespace std; const int MAXN = 10001; const int MOD = 998244353; int pw(int a, int b = MOD - 2) { return 0; } array<int, MAXN> f, fc, f2, f2c; string a, b; int mul(int a, int b) { return (ll(a) * b) % MOD; } template <typename ... TArgs> int mul(int x, TArgs&& ... args) { return mul(x, mul(std::forward<TArgs>(args)...)); } int main() { #ifdef PAUNSVOKNO freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif ios_base::sync_with_stdio(false); cout.setf(ios::fixed); cout.precision(20); cin >> a >> b; int n = a.length(); int k = 0, c = 0; for (int i = 0; i < n; i++) if (a[i] == '1') { k++; c += (b[i] - '0'); } f.fill(0); f2.fill(0); f[0] = 1; for (int i = 1; i <= k; i++) { fc = f; f2c = f2; f.fill(0), f2.fill(0); for (int j = 0; j <= i; j++) { int d = i - j; ll ans = 0; if (j > 0) { f2[j] += mul(fc[j - 1], i); if (j > 1) f2[j] += mul(i, j - 1, f2c[j - 1]); f2[j] %= MOD; } if (j) ans += mul(j, fc[j - 1]); if (j > 1) { ans += mul(j, j - 1, f2c[j - 1]); } if (d) ans += mul(d, d, fc[j]); if (j > 0) ans += mul(j, d, fc[j - 1]); f[j] = ans % MOD; } } cout << f[c] << "\n"; }
Submission Info
Submission Time | |
---|---|
Task | E - Shuffle and Swap |
User | cospleermusora |
Language | C++14 (GCC 5.4.1) |
Score | 1700 |
Code Size | 1592 Byte |
Status | AC |
Exec Time | 956 ms |
Memory | 512 KB |
Judge Result
Set Name | Sample | Partial | All | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 1200 / 1200 | 500 / 500 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt |
Partial | sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt, subtask_1_28.txt, subtask_1_29.txt, subtask_1_30.txt, subtask_1_31.txt, subtask_1_32.txt, subtask_1_33.txt, subtask_1_34.txt, subtask_1_35.txt, subtask_1_36.txt, subtask_1_37.txt, subtask_1_38.txt, subtask_1_39.txt, subtask_1_40.txt, subtask_1_41.txt, subtask_1_42.txt |
All | sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt, subtask_1_28.txt, subtask_1_29.txt, subtask_1_30.txt, subtask_1_31.txt, subtask_1_32.txt, subtask_1_33.txt, subtask_1_34.txt, subtask_1_35.txt, subtask_1_36.txt, subtask_1_37.txt, subtask_1_38.txt, subtask_1_39.txt, subtask_1_40.txt, subtask_1_41.txt, subtask_1_42.txt, subtask_2_01.txt, subtask_2_02.txt, subtask_2_03.txt, subtask_2_04.txt, subtask_2_05.txt, subtask_2_06.txt, subtask_2_07.txt, subtask_2_08.txt, subtask_2_09.txt, subtask_2_10.txt, subtask_2_11.txt, subtask_2_12.txt, subtask_2_13.txt, subtask_2_14.txt, subtask_2_15.txt, subtask_2_16.txt, subtask_2_17.txt, subtask_2_18.txt, subtask_2_19.txt, subtask_2_20.txt, subtask_2_21.txt, subtask_2_22.txt, subtask_2_23.txt, subtask_2_24.txt, subtask_2_25.txt, subtask_2_26.txt, subtask_2_27.txt, subtask_2_28.txt, subtask_2_29.txt, subtask_2_30.txt, subtask_2_31.txt, subtask_2_32.txt, subtask_2_33.txt, subtask_2_34.txt, subtask_2_35.txt, subtask_2_36.txt, subtask_2_37.txt, subtask_2_38.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 1 ms | 384 KB |
sample_02.txt | AC | 1 ms | 384 KB |
sample_03.txt | AC | 1 ms | 384 KB |
sample_04.txt | AC | 1 ms | 384 KB |
subtask_1_01.txt | AC | 1 ms | 384 KB |
subtask_1_02.txt | AC | 1 ms | 384 KB |
subtask_1_03.txt | AC | 1 ms | 384 KB |
subtask_1_04.txt | AC | 1 ms | 384 KB |
subtask_1_05.txt | AC | 1 ms | 384 KB |
subtask_1_06.txt | AC | 1 ms | 384 KB |
subtask_1_07.txt | AC | 1 ms | 384 KB |
subtask_1_08.txt | AC | 1 ms | 384 KB |
subtask_1_09.txt | AC | 1 ms | 384 KB |
subtask_1_10.txt | AC | 1 ms | 384 KB |
subtask_1_11.txt | AC | 2 ms | 384 KB |
subtask_1_12.txt | AC | 3 ms | 384 KB |
subtask_1_13.txt | AC | 4 ms | 384 KB |
subtask_1_14.txt | AC | 9 ms | 384 KB |
subtask_1_15.txt | AC | 9 ms | 384 KB |
subtask_1_16.txt | AC | 9 ms | 384 KB |
subtask_1_17.txt | AC | 9 ms | 384 KB |
subtask_1_18.txt | AC | 8 ms | 384 KB |
subtask_1_19.txt | AC | 7 ms | 384 KB |
subtask_1_20.txt | AC | 7 ms | 384 KB |
subtask_1_21.txt | AC | 7 ms | 384 KB |
subtask_1_22.txt | AC | 7 ms | 384 KB |
subtask_1_23.txt | AC | 6 ms | 384 KB |
subtask_1_24.txt | AC | 5 ms | 384 KB |
subtask_1_25.txt | AC | 5 ms | 384 KB |
subtask_1_26.txt | AC | 5 ms | 384 KB |
subtask_1_27.txt | AC | 7 ms | 384 KB |
subtask_1_28.txt | AC | 7 ms | 384 KB |
subtask_1_29.txt | AC | 7 ms | 384 KB |
subtask_1_30.txt | AC | 7 ms | 384 KB |
subtask_1_31.txt | AC | 7 ms | 384 KB |
subtask_1_32.txt | AC | 7 ms | 384 KB |
subtask_1_33.txt | AC | 5 ms | 384 KB |
subtask_1_34.txt | AC | 5 ms | 384 KB |
subtask_1_35.txt | AC | 7 ms | 384 KB |
subtask_1_36.txt | AC | 7 ms | 384 KB |
subtask_1_37.txt | AC | 7 ms | 384 KB |
subtask_1_38.txt | AC | 7 ms | 384 KB |
subtask_1_39.txt | AC | 6 ms | 384 KB |
subtask_1_40.txt | AC | 6 ms | 384 KB |
subtask_1_41.txt | AC | 6 ms | 384 KB |
subtask_1_42.txt | AC | 6 ms | 384 KB |
subtask_2_01.txt | AC | 1 ms | 512 KB |
subtask_2_02.txt | AC | 1 ms | 512 KB |
subtask_2_03.txt | AC | 17 ms | 512 KB |
subtask_2_04.txt | AC | 392 ms | 512 KB |
subtask_2_05.txt | AC | 355 ms | 512 KB |
subtask_2_06.txt | AC | 953 ms | 512 KB |
subtask_2_07.txt | AC | 953 ms | 512 KB |
subtask_2_08.txt | AC | 956 ms | 512 KB |
subtask_2_09.txt | AC | 945 ms | 512 KB |
subtask_2_10.txt | AC | 677 ms | 512 KB |
subtask_2_11.txt | AC | 680 ms | 512 KB |
subtask_2_12.txt | AC | 678 ms | 512 KB |
subtask_2_13.txt | AC | 557 ms | 512 KB |
subtask_2_14.txt | AC | 552 ms | 512 KB |
subtask_2_15.txt | AC | 562 ms | 512 KB |
subtask_2_16.txt | AC | 450 ms | 512 KB |
subtask_2_17.txt | AC | 450 ms | 512 KB |
subtask_2_18.txt | AC | 448 ms | 512 KB |
subtask_2_19.txt | AC | 267 ms | 512 KB |
subtask_2_20.txt | AC | 267 ms | 512 KB |
subtask_2_21.txt | AC | 266 ms | 512 KB |
subtask_2_22.txt | AC | 863 ms | 512 KB |
subtask_2_23.txt | AC | 867 ms | 512 KB |
subtask_2_24.txt | AC | 863 ms | 512 KB |
subtask_2_25.txt | AC | 867 ms | 512 KB |
subtask_2_26.txt | AC | 821 ms | 512 KB |
subtask_2_27.txt | AC | 821 ms | 512 KB |
subtask_2_28.txt | AC | 269 ms | 512 KB |
subtask_2_29.txt | AC | 278 ms | 512 KB |
subtask_2_30.txt | AC | 328 ms | 512 KB |
subtask_2_31.txt | AC | 497 ms | 512 KB |
subtask_2_32.txt | AC | 497 ms | 512 KB |
subtask_2_33.txt | AC | 498 ms | 512 KB |
subtask_2_34.txt | AC | 497 ms | 512 KB |
subtask_2_35.txt | AC | 798 ms | 512 KB |
subtask_2_36.txt | AC | 799 ms | 512 KB |
subtask_2_37.txt | AC | 797 ms | 512 KB |
subtask_2_38.txt | AC | 797 ms | 512 KB |