CSES - Datatähti 2022 alku - Results
Submission details
Task:Ositus
Sender:Anttono
Submission time:2021-10-08 16:26:46 +0300
Language:C++ (C++11)
Status:READY
Result:40
Feedback
groupverdictscore
#1ACCEPTED40
#20
#30
Test results
testverdicttimegroup
#1ACCEPTED0.01 s1, 2, 3details
#2ACCEPTED0.01 s1, 2, 3details
#3ACCEPTED0.01 s1, 2, 3details
#4ACCEPTED0.01 s1, 2, 3details
#50.01 s2, 3details
#60.01 s3details
#70.08 s3details

Code

#include <bits/stdc++.h>

using namespace std;

#define M 1000000007

typedef long long int ll;

string s;
ll r,vr;
map<char,pair<ll,ll>> m;

int main()
{
    cin>>s;
    for(char c : s)
    {
        if(r == 0)
        {
            r++;
        }
        else
        {
            r *= 2;
            ll cvr = vr - m[c].second;
            cvr = cvr > 0 ? cvr : 0;
            cvr = m[c].first - cvr;
            cvr = cvr > 0 ? cvr : 0;
            r -= cvr;
            vr += cvr;
        }
        r %= M;
        vr %= M;
        m[c] = make_pair(r,vr);
    }
    if(r<0) r += M;
    cout<<r;
}

Test details

Test 1

Group: 1, 2, 3

Verdict: ACCEPTED

input
a

correct output
1

user output
1

Test 2

Group: 1, 2, 3

Verdict: ACCEPTED

input
abcdefghij

correct output
512

user output
512

Test 3

Group: 1, 2, 3

Verdict: ACCEPTED

input
abcabaacbc

correct output
120

user output
120

Test 4

Group: 1, 2, 3

Verdict: ACCEPTED

input
aaxxxxxxaa

correct output
4

user output
4

Test 5

Group: 2, 3

Verdict:

input
mfyzvoxmppoxcvktmcjkryyocfweub...

correct output
643221148

user output
376355900

Test 6

Group: 3

Verdict:

input
weinscqmmpgbrlboocvtbptgbahmwv...

correct output
831644159

user output
77089525

Test 7

Group: 3

Verdict:

input
sxaoxcyrjoeieyinaqxwukgzdnhhsw...

correct output
816016015

user output
601111421