CSES - Datatähti 2022 alku - Results
Submission details
Task:Ositus
Sender:Anttono
Submission time:2021-10-07 18:26:20 +0300
Language:C++11
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
Test results
testverdicttimegroup
#1ACCEPTED0.01 s1, 2, 3details
#2ACCEPTED0.01 s1, 2, 3details
#30.01 s1, 2, 3details
#4ACCEPTED0.01 s1, 2, 3details
#50.01 s2, 3details
#60.01 s3details
#70.07 s3details

Code

#include <bits/stdc++.h>

using namespace std;

#define M 1000000007

typedef long long int ll;

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

int main()
{
    cin>>s;
    ll pf = 0;
    ll pl = 0;
    for(char c : s)
    {
        if(r == 0)
        {
            r++;
        }
        else
        {
            r *= 2;
            if(m[c]>0)
            {
                if(pl<=m[c])
                {
                    r -= m[c];
                }
                else if(pf<=m[c])
                {
                     r -= pl-m[c];
                }
                pf = m[c];
                pl = r%M;
            }

        }
        r %= M;
        m[c] = r;
    }
    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:

input
abcabaacbc

correct output
120

user output
73

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
750258343

Test 6

Group: 3

Verdict:

input
weinscqmmpgbrlboocvtbptgbahmwv...

correct output
831644159

user output
927220249

Test 7

Group: 3

Verdict:

input
sxaoxcyrjoeieyinaqxwukgzdnhhsw...

correct output
816016015

user output
288974687