| Task: | Merkkijonot |
| Sender: | Kemm1706 |
| Submission time: | 2024-01-17 15:56:37 +0200 |
| Language: | C++ (C++11) |
| Status: | READY |
| Result: | 0 |
| group | verdict | score |
|---|---|---|
| #1 | WRONG ANSWER | 0 |
| #2 | WRONG ANSWER | 0 |
| #3 | WRONG ANSWER | 0 |
| test | verdict | time | group | |
|---|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | 1, 2, 3 | details |
| #2 | WRONG ANSWER | 0.00 s | 1, 2, 3 | details |
| #3 | WRONG ANSWER | 0.00 s | 1, 2, 3 | details |
| #4 | ACCEPTED | 0.00 s | 1, 2, 3 | details |
| #5 | ACCEPTED | 0.00 s | 2, 3 | details |
| #6 | ACCEPTED | 0.00 s | 2, 3 | details |
| #7 | WRONG ANSWER | 0.01 s | 2, 3 | details |
| #8 | WRONG ANSWER | 0.00 s | 2, 3 | details |
| #9 | ACCEPTED | 0.01 s | 3 | details |
| #10 | WRONG ANSWER | 0.01 s | 3 | details |
| #11 | WRONG ANSWER | 0.02 s | 3 | details |
| #12 | WRONG ANSWER | 0.07 s | 3 | details |
| #13 | ACCEPTED | 0.01 s | 3 | details |
| #14 | ACCEPTED | 0.01 s | 3 | details |
| #15 | WRONG ANSWER | 0.00 s | 2, 3 | details |
| #16 | WRONG ANSWER | 0.01 s | 3 | details |
Compiler report
input/code.cpp: In function 'pl cvt(std::string)':
input/code.cpp:15:22: warning: unused variable 'i' [-Wunused-variable]
15 | ll a = 0, b = 0, i;
| ^Code
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair <ll, ll> pl;
typedef vector <ll> vl;
typedef vector <pl> vpl;
typedef vector <vl> vvl;
#define fi first
#define se second
#define pb push_back
pl cvt(string s)
{
ll a = 0, b = 0, i;
for(auto x : s)
if(x == 'a')
a++;
else
b++;
return {a, b};
}
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
ll n, i, j, x = 0, y = 0, c = 0;
string s;
cin >> n;
vpl a(n + 1);
for(i = 1; i <= n; i++)
{
cin >> s;
a[i] = cvt(s);
x += a[i].fi;
y += a[i].se;
}
if(x % 2 != 0 || y % 2 != 0)
{
cout << 0;
return 0;
}
x /= 2, y /= 2;
map <pl, ll> mp;
for(i = 0; i <= x; i++)
for(j = 0; j <= y; j++)
{
mp[{i, j}] = c;
c++;
}
vvl ks(n + 1, vl(c + 1, 0));
for(i = 0; i <= n; i++)
ks[i][0] = 1;
for(i = 1; i <= n; i++)
{
ll k = mp[a[i]];
for(j = c - 1; j >= k; j--)
ks[i][j] += ks[i - 1][j] + ks[i - 1][j - k];
}
/*for(i = 0; i <= n; i++)
{
for(j = 0; j <= c; j++)
cerr << ks[i][j];
cerr << "\n";
}*/
cout << ks[n][mp[{x, y}]];
return 0;
}
Test details
Test 1
Group: 1, 2, 3
Verdict: ACCEPTED
| input |
|---|
| 4 b bbb baabaabaa aab |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 2
Group: 1, 2, 3
Verdict: WRONG ANSWER
| input |
|---|
| 8 b bb baa a ... |
| correct output |
|---|
| 12 |
| user output |
|---|
| 5 |
Test 3
Group: 1, 2, 3
Verdict: WRONG ANSWER
| input |
|---|
| 16 a a a b ... |
| correct output |
|---|
| 5040 |
| user output |
|---|
| 4980 |
Test 4
Group: 1, 2, 3
Verdict: ACCEPTED
| input |
|---|
| 16 b b a a ... |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 5
Group: 2, 3
Verdict: ACCEPTED
| input |
|---|
| 5 bab bbaaabbabbbaababbbabbabaaabaaa... |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 6
Group: 2, 3
Verdict: ACCEPTED
| input |
|---|
| 10 baabbbababbbabbaaaabab aabaaabbbab aaaabbabab aab ... |
| correct output |
|---|
| 2 |
| user output |
|---|
| 2 |
Test 7
Group: 2, 3
Verdict: WRONG ANSWER
| input |
|---|
| 20 aaaab baaab babb b ... |
| correct output |
|---|
| 4332 |
| user output |
|---|
| 2211 |
Test 8
Group: 2, 3
Verdict: WRONG ANSWER
| input |
|---|
| 100 a b a b ... |
| correct output |
|---|
| 433105324 |
| user output |
|---|
| -6400280622608868163 |
Test 9
Group: 3
Verdict: ACCEPTED
| input |
|---|
| 10 aaaabbabbaabbaaaabbbbabaaaabab... |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 10
Group: 3
Verdict: WRONG ANSWER
| input |
|---|
| 50 aaba aaa abbbbaaba ababbabbabab ... |
| correct output |
|---|
| 636733956 |
| user output |
|---|
| 478519908342 |
Test 11
Group: 3
Verdict: WRONG ANSWER
| input |
|---|
| 100 ba bbbaba bbba bb ... |
| correct output |
|---|
| 264657218 |
| user output |
|---|
| 9184582740833168594 |
Test 12
Group: 3
Verdict: WRONG ANSWER
| input |
|---|
| 500 a b b b ... |
| correct output |
|---|
| 394045503 |
| user output |
|---|
| -357796308271810134 |
Test 13
Group: 3
Verdict: ACCEPTED
| input |
|---|
| 2 bbbababaaaabbbaaaaaaabbabbbaab... |
| correct output |
|---|
| 2 |
| user output |
|---|
| 2 |
Test 14
Group: 3
Verdict: ACCEPTED
| input |
|---|
| 1 bbbaaaabaabbbababbbbbbbbabbbaa... |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 15
Group: 2, 3
Verdict: WRONG ANSWER
| input |
|---|
| 100 a a a a ... |
| correct output |
|---|
| 538992043 |
| user output |
|---|
| 1184508333840160104 |
Test 16
Group: 3
Verdict: WRONG ANSWER
| input |
|---|
| 500 a a a a ... |
| correct output |
|---|
| 515561345 |
| user output |
|---|
| 6552127682118890048 |
