QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#363672#8512. Harmonic Operationsucup-team1134#AC ✓45ms53860kbC++236.6kb2024-03-24 01:42:092024-03-24 01:42:10

Judging History

你现在查看的是最新测评结果

  • [2024-03-24 01:42:10]
  • 评测
  • 测评结果:AC
  • 用时:45ms
  • 内存:53860kb
  • [2024-03-24 01:42:09]
  • 提交

answer

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
template<class T>bool chmax(T &a, const T &b) { if (a<b) { a=b; return true; } return false; }
template<class T>bool chmin(T &a, const T &b) { if (b<a) { a=b; return true; } return false; }
#define all(x) (x).begin(),(x).end()
#define fi first
#define se second
#define mp make_pair
#define si(x) int(x.size())
const int mod1=1030000001,mod2=1031000023,MAX=300005,INF=1<<30;

struct Rollinghash{
    string S;
    int n;
    int base1;
    int base2;
    vector<ll> h1,h2,ru1,ru2;
    
    void make(string &T,int ba1,int ba2){
        S=T;
        n=S.size();
        h1.assign(n+1,0);
        h2.assign(n+1,0);
        ru1.assign(n+1,0);
        ru2.assign(n+1,0);
        base1=ba1;
        base2=ba2;
        
        ru1[0]=1;
        ru2[0]=1;
        
        for(int i=1;i<=n;i++){
            h1[i]=h1[i-1]*base1+ll(S[i-1]-'a'+1);
            h1[i]%=mod1;
            
            h2[i]=h2[i-1]*base2+ll(S[i-1]-'a'+1);
            h2[i]%=mod2;
            
            ru1[i]=ru1[i-1]*base1%mod1;
            ru2[i]=ru2[i-1]*base2%mod2;
        }
    }
    
    pair<ll,ll> ha(int l,int r){
        pair<ll,ll> res;
        res.fi=(h1[r]-h1[l]*ru1[r-l]%mod1+mod1)%mod1;
        res.se=(h2[r]-h2[l]*ru2[r-l]%mod2+mod2)%mod2;
        
        return res;
    }//開区間
};

mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());

ll solve(string S,vector<pair<char,int>> que){
    ll ha1=rng()%mod1,ha2=rng()%mod2;
    ll N=si(S);
    ll Q=si(que);
    
    vector<pair<ll,ll>> T(Q+1);
    for(int i=0;i<Q;i++){
        char c=que[i].fi;
        T[i+1]=T[i];
        if(c=='I'){
            T[i+1].fi^=1;
        }else if(c=='L'){
            int x=que[i].se;
            if(T[i].fi==0){
                T[i+1].se=(T[i+1].se+x)%N;
            }else{
                T[i+1].se=(N+T[i+1].se-x)%N;
            }
        }else{
            int x=que[i].se;
            if(T[i].fi==0){
                T[i+1].se=(T[i+1].se+x)%N;
            }else{
                T[i+1].se=(N+T[i+1].se-x)%N;
            }
        }
        
        //cout<<T[i+1].fi<<" "<<T[i+1].se<<endl;
    }
    
    string A=S+S+S,B=A;
    reverse(all(B));
    
    Rollinghash ro1,ro2;
    ro1.make(A,ha1,ha2);
    ro2.make(B,ha1,ha2);
    //cout<<A<<endl;
    //cout<<B<<endl;
    //for(int i=0;i<N;i++) cout<<ro1.ha(i,i+N).fi<<" "<<ro2.ha(i,i+N).fi<<endl;
    
    ll ans=0;
    
    vector<ll> X,Y;
    for(auto [a,b]:T){
        if(a==0) X.push_back(b);
        else Y.push_back(b);
    }
    
    {
        vector<int> OK;
        for(int i=0;i<N;i++){
            if(ro1.ha(0,N)==ro1.ha(i,i+N)) OK.push_back(i);
        }
        ll g;
        if(si(OK)==1) g=N;
        else g=OK[1]-OK[0];
        vector<ll> CN(g);
        
        for(ll x:X){
            ans+=CN[x%g];
            CN[x%g]++;
            //cout<<x<<" ";
        }
    }
    //cout<<ans<<" ";
    {
        vector<int> OK;
        for(int i=0;i<N;i++){
            if(ro2.ha(0,N)==ro2.ha(i,i+N)) OK.push_back(i);
        }
        ll g;
        if(si(OK)==1) g=N;
        else g=OK[1]-OK[0];
        vector<ll> CN(g);
        
        for(ll x:Y){
            ans+=CN[x%g];
            CN[x%g]++;
            //cout<<x<<" ";
        }
    }
    //cout<<ans<<" ";
    {
        vector<int> OK;
        for(int i=0;i<N;i++){
            if(ro1.ha(0,N)==ro2.ha(N-i,N+N-i)) OK.push_back(i);
            //cout<<ro1.ha(0,N).fi<<" "<<ro1.ha(0,N).se<<endl;
            //cout<<ro2.ha(N-i,N+N-i).fi<<" "<<ro2.ha(N-i,N+N-i).se<<endl;
        }
        //cout<<si(OK)<<endl;
        if(si(OK)){
            ll g,dif;
            if(si(OK)==1){
                g=N;
                dif=OK[0];
            }else{
                g=(OK[1]-OK[0]);
                dif=OK[0]%g;
            }
            
            vector<ll> CN(g);
            
            for(auto [a,b]:T){
                if(a==0){
                    CN[(g+b%g+dif)%g]++;
                }else{
                    ans+=CN[b%g];
                }
            }
        }
    }
    //cout<<ans<<" ";
    {
        vector<int> OK;
        for(int i=0;i<N;i++){
            if(ro1.ha(0,N)==ro2.ha(N+i,N+N+i)) OK.push_back(i);
            //cout<<ro1.ha(0,N).fi<<" "<<ro1.ha(0,N).se<<endl;
            //cout<<ro2.ha(N-i,N+N-i).fi<<" "<<ro2.ha(N-i,N+N-i).se<<endl;
        }
        //cout<<si(OK)<<endl;
        if(si(OK)){
            ll g,dif;
            if(si(OK)==1){
                g=N;
                dif=OK[0];
            }else{
                g=(OK[1]-OK[0]);
                dif=OK[0]%g;
            }
            
            vector<ll> CN(g);
            
            for(auto [a,b]:T){
                if(a==1){
                    CN[(g+b%g+dif)%g]++;
                }else{
                    ans+=CN[b%g];
                }
            }
        }
    }
    //cout<<ans<<" ";
    //cout<<endl;
    return ans;
}

ll gutyoku(string S,vector<pair<char,int>> que){
    ll ans=0;
    ll N=si(S),Q=si(que);
    for(int l=0;l<Q;l++){
        for(int r=l;r<Q;r++){
            string T=S;
            for(int k=l;k<=r;k++){
                if(que[k].fi=='I') reverse(all(T));
                else{
                    rotate(T.begin(),T.begin()+que[k].se,T.end());
                }
            }
            if(S==T) ans++;
        }
    }
    return ans;
}
int main(){
    
    std::ifstream in("text.txt");
    std::cin.rdbuf(in.rdbuf());
    cin.tie(0);
    ios::sync_with_stdio(false);
    
    string S;cin>>S;
    ll Q;cin>>Q;
    vector<pair<char,int>> que(Q);
    for(int i=0;i<Q;i++){
        char c;cin>>c;
        if(c=='I'){
            que[i]=mp(c,-1);
        }else if(c=='L'){
            int x;cin>>x;
            que[i]=mp('L',x);
        }else{
            int x;cin>>x;x=si(S)-x;
            que[i]=mp('L',x);
        }
    }
    cout<<solve(S,que)<<endl;
    return 0;
    while(1){
        int N=rng()%14+2;
        string S;
        for(int i=0;i<N;i++) S+=char('a'+(rng()%3));
        int Q=rng()%13+1;
        vector<pair<char,int>> que;
        for(int i=0;i<Q;i++){
            if(rng()%2==0){
                que.push_back(mp('I',-1));
            }else{
                que.push_back(mp('L',rng()%(N-1)+1));
            }
        }
        int a=solve(S,que);
        int b=gutyoku(S,que);
        if(a!=b){
            cout<<S<<" "<<a<<" "<<b<<endl;
            for(auto [a,b]:que) cout<<a<<" "<<b<<endl;
            return 0;
        }
    }
    
}


Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3728kb

input:

pda
2
R 2
L 2

output:

1

result:

ok 1 number(s): "1"

Test #2:

score: 0
Accepted
time: 0ms
memory: 3636kb

input:

aaa
4
R 1
I
I
R 1

output:

10

result:

ok 1 number(s): "10"

Test #3:

score: 0
Accepted
time: 0ms
memory: 3708kb

input:

caso
6
L 1
I
I
R 1
I
I

output:

4

result:

ok 1 number(s): "4"

Test #4:

score: 0
Accepted
time: 0ms
memory: 3756kb

input:

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
100
L 12
I
R 47
L 54
I
I
R 80
L 86
L 19
R 5
L 53
L 40
R 20
L 11
R 40
I
I
R 66
R 6
L 76
L 93
R 39
I
I
L 24
R 59
R 99
L 52
I
I
R 77
L 11
R 60
L 16
I
L 40
I
R 35
L 64
R 11
L 34
I
R 35
I
L 87
I
I
L 42
L ...

output:

5050

result:

ok 1 number(s): "5050"

Test #5:

score: 0
Accepted
time: 0ms
memory: 3692kb

input:

wewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewewe
100
R 83
R 34
I
I
R 87
R 74
L 98
I
L 77
L 8
R 23
L 94
I
I
L 79
L 87
L 47
L 85
L 49
L 7
I
I
R 97
R 15
I
R 66
L 8
R 62
R 68
I
I
R 32
R 24
R 36
L 60
R 75
R 77
I
L 42
I
L 61
I
I
R 78
R 51
L 98
I
L 77
I
I...

output:

2556

result:

ok 1 number(s): "2556"

Test #6:

score: 0
Accepted
time: 0ms
memory: 3648kb

input:

rtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtrtr
100
R 27
R 68
I
L 29
L 51
L 19
L 12
L 10
L 52
L 38
L 17
R 30
L 29
L 51
L 17
R 29
I
R 96
R 50
R 56
I
I
I
L 73
L 15
I
R 1
R 81
L 94
R 27
R 52
R 57
R 44
I
I
L 53
I
R 87
L 39
L 25
I
I
R 25
I
I
I
L 88
L ...

output:

116

result:

ok 1 number(s): "116"

Test #7:

score: 0
Accepted
time: 0ms
memory: 3676kb

input:

tcldtcldtcldtcldtcldtcldtcldtcldtcld
100
L 20
I
I
I
L 20
R 13
L 16
L 19
R 10
I
I
I
L 11
R 30
R 30
I
L 35
I
L 28
R 23
R 24
L 20
R 15
I
I
L 13
I
R 1
I
R 6
I
I
L 22
I
L 22
R 22
L 30
L 30
I
I
I
R 35
I
R 3
L 1
R 4
I
R 11
R 2
R 21
R 15
I
R 5
L 2
L 4
L 7
L 19
L 29
R 8
I
L 24
I
I
I
L 29
I
R 35
R 32
I
R 14
L...

output:

703

result:

ok 1 number(s): "703"

Test #8:

score: 0
Accepted
time: 0ms
memory: 3744kb

input:

wflbkhwflbkhwflbkhwflbkhwflbkhwflbkh
100
I
R 28
R 13
R 7
R 29
I
I
I
R 25
R 10
R 23
I
R 26
I
I
L 18
I
R 18
L 6
I
I
R 8
R 8
I
R 6
L 16
I
R 2
R 17
L 31
R 31
L 22
R 26
L 21
L 20
R 10
L 13
R 33
R 13
R 35
R 22
L 2
L 4
R 19
L 32
L 25
I
L 31
R 10
R 17
R 15
L 6
L 9
R 31
R 20
I
I
R 4
I
L 30
L 30
L 2
R 18
R 35...

output:

442

result:

ok 1 number(s): "442"

Test #9:

score: 0
Accepted
time: 0ms
memory: 3908kb

input:

mzgaokjwpmzgaokjwpmzgaokjwpmzgaokjwp
100
R 10
I
L 24
L 8
I
L 19
L 25
I
I
R 27
R 24
I
I
L 16
I
I
L 35
R 14
I
L 23
R 17
R 16
R 4
R 4
L 29
I
R 11
R 9
R 15
I
L 18
I
I
L 25
R 13
L 24
I
I
L 8
I
I
I
I
L 24
I
I
L 19
L 23
I
L 20
R 35
L 31
I
I
R 27
I
I
I
L 35
R 16
L 10
R 28
R 14
I
I
R 30
R 18
L 16
L 6
L 12
R ...

output:

280

result:

ok 1 number(s): "280"

Test #10:

score: 0
Accepted
time: 0ms
memory: 3748kb

input:

gtvcymjngzntgtvcymjngzntgtvcymjngznt
100
L 33
L 5
R 31
R 18
I
R 14
R 9
L 1
I
R 1
R 15
L 15
I
I
I
L 13
R 7
I
I
L 2
I
L 3
I
L 19
L 22
L 2
R 32
I
L 1
R 24
R 23
I
R 25
L 11
R 34
R 25
I
L 25
R 22
R 34
I
I
L 2
R 13
L 3
I
L 30
I
R 7
R 20
I
R 24
L 34
R 23
I
L 26
R 22
I
I
I
R 17
I
I
L 14
R 27
R 35
I
L 34
L 3...

output:

206

result:

ok 1 number(s): "206"

Test #11:

score: 0
Accepted
time: 0ms
memory: 3680kb

input:

dvaauyemcqhrmduoumdvaauyemcqhrmduoum
100
L 21
R 12
R 30
L 13
I
I
L 1
L 31
R 4
L 20
I
L 6
I
L 29
R 19
L 12
R 25
R 25
I
R 21
I
L 12
L 25
R 35
L 8
R 7
R 29
I
R 4
L 24
R 29
I
I
I
L 12
L 24
R 19
L 33
L 4
I
R 35
I
R 16
I
R 10
I
R 18
R 7
L 33
I
I
R 22
L 16
L 7
L 20
R 32
I
I
R 27
I
L 9
R 16
I
I
R 32
I
R 1
L...

output:

180

result:

ok 1 number(s): "180"

Test #12:

score: 0
Accepted
time: 0ms
memory: 3644kb

input:

pkmsckbnjeeojagpdtfxlmlgofbrygcuqiahynrwooxgdruurdgxoowrnyhaiqucgyrbfoglmlxftdpgajoeejnbkcsmkplhxxhl
100
L 14
R 54
L 88
L 66
L 38
R 91
I
I
I
I
R 56
L 4
L 76
R 12
L 86
I
I
I
I
R 52
L 98
L 98
L 39
R 60
L 14
R 23
R 92
R 99
L 71
I
I
I
I
L 1
R 33
I
R 65
L 72
I
I
I
R 20
R 48
L 81
L 7
I
R 72
R 14
I
I
R 10
...

output:

75

result:

ok 1 number(s): "75"

Test #13:

score: 0
Accepted
time: 0ms
memory: 3636kb

input:

txgcggvgarkkflejgkaukutnsjogrglpdmocuhyiboientoffaaaffotneiobiyhucomdplgrgojsntukuakgjelfkkragvggcgxt
100
R 35
R 84
I
R 68
R 24
L 42
L 24
R 16
R 80
R 95
L 9
L 26
L 96
R 64
I
R 56
I
L 5
R 83
R 2
R 57
R 28
I
R 17
I
R 11
I
R 100
L 42
I
L 89
I
L 91
I
I
R 78
I
R 30
L 6
I
L 56
L 48
R 79
L 8
I
R 5
L 25
R 2...

output:

76

result:

ok 1 number(s): "76"

Test #14:

score: 0
Accepted
time: 0ms
memory: 3700kb

input:

qhygenaiejhluibjfyjbdoslylsodbjyfjbiulhjeianegyhqydgoxbmbcuslmfqgraeqkpuerbnbreupkqeargqfmlsucbmbxogdy
100
L 41
R 73
R 41
I
R 59
R 77
I
I
R 21
L 5
R 30
R 3
L 94
I
L 36
R 2
R 85
L 39
L 17
R 47
I
R 86
L 30
R 38
R 80
I
R 39
I
I
L 99
I
L 15
I
L 76
L 68
L 91
I
R 71
R 36
L 14
L 15
I
L 63
R 71
I
L 38
I
R 3...

output:

48

result:

ok 1 number(s): "48"

Test #15:

score: 0
Accepted
time: 35ms
memory: 53196kb

input:

yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy...

output:

20000100000

result:

ok 1 number(s): "20000100000"

Test #16:

score: 0
Accepted
time: 45ms
memory: 53268kb

input:

uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu...

output:

20000100000

result:

ok 1 number(s): "20000100000"

Test #17:

score: 0
Accepted
time: 27ms
memory: 53400kb

input:

iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii...

output:

20000100000

result:

ok 1 number(s): "20000100000"

Test #18:

score: 0
Accepted
time: 40ms
memory: 52320kb

input:

opopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopopop...

output:

10000007832

result:

ok 1 number(s): "10000007832"

Test #19:

score: 0
Accepted
time: 31ms
memory: 53088kb

input:

asasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasas...

output:

199395

result:

ok 1 number(s): "199395"

Test #20:

score: 0
Accepted
time: 28ms
memory: 52068kb

input:

dffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdffdff...

output:

6666663346

result:

ok 1 number(s): "6666663346"

Test #21:

score: 0
Accepted
time: 29ms
memory: 52144kb

input:

ghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghjghj...

output:

3333345323

result:

ok 1 number(s): "3333345323"

Test #22:

score: 0
Accepted
time: 36ms
memory: 53860kb

input:

lkkzzkklzkklzzklllkzlkkzzzzlzlzlkzlzzzkzlklzkklzlzzlzlllkkzlzkkklklkzkkzllklkzkzzzkzkkzzllzllzzkkkzkzzkzklzzzzkllzkzlklzlkzllkkllzzlzkzkzlllzlllkzzkzkkzzkkzlllzzllkkzlkklllzzzkkzkzkkllkklzkkkzzzzlkzlzklzllzkklkzlzzzlzlzkzllkklzlkklzlkllzklllkllzzzzllzllkkllzlklkkllzzlzzlllzzzklzzkkkzlklkkkzlzllzllzk...

output:

74917

result:

ok 1 number(s): "74917"

Test #23:

score: 0
Accepted
time: 28ms
memory: 52948kb

input:

albusdamhnkbpphiurtnhdggnfjsvsdcypnsqurbidrszoremwfrqmdmyjkbxfpdcalhcmtehpatfqupucnlzelvkadygbhlrjjbmlyitutipaermatkqdtdfrmfsnfptcomcpnlkxnunvtbxllyyghykifokwklpptkocrgxjtmcnogbgnhlcgtapemexkxoocllzbsszztvctjnmlnkgrbplakpxgujpfrpelngfoknvrsdqvrdqzajbxtirdsmiekycojmhsbcqkclzsowkvuzmsysmialqmfivvzgndq...

output:

74399

result:

ok 1 number(s): "74399"

Test #24:

score: 0
Accepted
time: 24ms
memory: 45816kb

input:

rniwfckztiivwkcnxteghcavxgiqsygrpxnliiojczdxqylzgnztcburluxmntpjlwxhyugympaeewrjkugdzntrkdkaxgflgfhzxpsaisggvbwmeirprlowksbmyhmjbvtujsvhoawqzqoqcuyzeijmbgqnhzwhyficrtyjrxhlfwqiantnxnbjtxlrzomwycuxohpfschpxbwogepfjmkuxpupulgdkvelkodyoslajfftymsiazgrzhircmdetthficiexfhxoomkmqijoxocqlxmhgwcisiyhurxfkub...

output:

85203

result:

ok 1 number(s): "85203"

Test #25:

score: 0
Accepted
time: 34ms
memory: 53576kb

input:

fbjylvxoacqlofjvtxpkgglsfesutcqgpipusktuafjmqwqzqgvmnsvahecjbkakutjmblicyiufpjxdtvgsfioluxgukurkccjcynmakwrjdpksdbuqvmjwaadzrhugptwljgawlbscvligbhxeqldczpljzttlzpnmgotkwpuqboompspvbdhaocdirrlwiocmwuqgcghbwgrvsmtzgigucucrukpywyfwrbwaixrslahweekucosreiwgkozmistchdimjnktpxbqxriexqsmympycuwmhaymyzauihhh...

output:

125637

result:

ok 1 number(s): "125637"

Test #26:

score: 0
Accepted
time: 31ms
memory: 52848kb

input:

euzfuvlnzbucvvvbalzcpurzbolgxoohfnfzlrcbpjnxisidecdojzafzaanklvzyttgccekghsomgybamfcwmlvntnavtasvomczpxvzqnacyltszblvbuwwhdmezclilyygggnjjfcshghnitimbtmxbapgkvjhtmwvhlhlfjifhfrazrhpgrdjktaaqspduyxturzecvvubbuhhjvuwzycbdrjjkosiprxomxeobdyqknjidiediyzhihchbginbulepyrgoheosvyhyrkicglsorfzxksrxjyupkzyiz...

output:

124360

result:

ok 1 number(s): "124360"

Test #27:

score: 0
Accepted
time: 21ms
memory: 52932kb

input:

unbnsxcgavvynxatgliythqvjqyfkyldaytaopgdxfqtpyeuyccuounieygpllptrxmesjwgojroodmlzdezcffoxxbffgcsbltnuwbzbhfnbaehkdsuzsjimuubljrtlejbmaxjmpghjashysifcffsbbyzpnxmcehqsnnvbiuobcrimodyfwofowvdpmimsckhceinykwdvnqlvavfczsucdfeilmzqdiaqwdhndljyfahmzrjgimootbmndqnpjkspcgngsvojexrxjlomnlvvaamwzgxdjjjhocvvkqh...

output:

124758

result:

ok 1 number(s): "124758"

Test #28:

score: 0
Accepted
time: 27ms
memory: 44752kb

input:

njvekjflgdvxrkxymgepijcnrjqzroaaschvnlgpavcffffjeyjoigrunncmoduswvmnuojqgsaujhaqrmfmoqwzvajhxdffuztanwynaatjnkbrdgslgetypxtmkraaggdjiyxnfbxbgwkftzxsshrfnbphodltgcguncndshlosjzkychbislawtyrdnjvekjflgdvxrkxymgepijcnrjqzroaaschvnlgpavcffffjeyjoigrunncmoduswvmnuojqgsaujhaqrmfmoqwzvajhxdffuztanwynaatjnkb...

output:

52918599

result:

ok 1 number(s): "52918599"

Test #29:

score: 0
Accepted
time: 27ms
memory: 45220kb

input:

irnzrcherzsoipcrgzkfzycvkrypbdnzeqjtttgpgllujmiaumswqqlajbszcgmmhxxfggnqsvtcewakiqcbjsxaaoryifhvqctuhxbegmzoxjxdmfsxlzudhvboknidjgdgadqgncppnwqtzburacucgctrrwmyhfdxpiybbibvbtcgykiyimkhvxzsxldmsgqrqzqdxhdkxymloksnhkohmuocpfgesgvokzcthvuuklmrdygrpvmiulovrjtwfobrtxajrbbtnmltsduhkxffkvpuvvyjiaydjxdhdoxg...

output:

2006481

result:

ok 1 number(s): "2006481"

Test #30:

score: 0
Accepted
time: 24ms
memory: 44996kb

input:

ckewrtmlvdfgrtwhqfhrnnaqqpbzvnrjnqhclnuigkqtyqcrfdzlxtrtsuefvzytfhohexuytggxkljigzmkbscyeelgmtrzaolaitmzmttbdclogmzyyguzjejehuaybrrrlgxwpukqhhnrucszkympotlckwtaiwedtybbkhlyyzllbtwqbenluuhmnbvdsgtqrqwvmhjbknaljiaigoimvjdpfualdcwmhngjirsyyojkycnkyqjinpfffegisghwsdblsvzelczqnfcnqpsnpiqfuefnntruntrscori...

output:

1827034

result:

ok 1 number(s): "1827034"

Test #31:

score: 0
Accepted
time: 32ms
memory: 45148kb

input:

clhtskvezsrhnbrtcavswrsilokwqjirzrlfusiiaembtaekmfrffcjmdysafvxyszyobzqbzzgofiunqvsiuttrgxqhhwbnlsesjmfgpdxaykhmfvmxeyfmwhwrnnnqtsyiokbbscmahshftklzucxtudozqcjxnmfffbggnlnfxmbyeifksecwwitglclbmtfpmccvcqjopqzvrbcjnyvhcheviialyjanngeohjxcfxdvnjmkcetseshlggkevayqpcijydtmqobtcdqaorsqhcaddyezvkgwlheejcmc...

output:

986982

result:

ok 1 number(s): "986982"

Test #32:

score: 0
Accepted
time: 28ms
memory: 46484kb

input:

mmcwddbgxskxzjukffqmzvpzhvfytgsugruqwlbbvnpwtvrhjjhdynenaifbljwgaasyzyyabpghmnlezfxhkuujtczchcpotpzvczjjzcvasrnlejelkuesljstscuupwoivjecvrgukipjlmkrvbdirrxqbikqghmxtshxmsermfspigatgrlwyxqfkymhhoajjpzjjsyinpsvooqjjvovpttggwxvlnzhbnmhaczpnlozaxeervjaexiviutxxhgjgoapbcksddztddnsdyiecoagrcvownnxtxzkquyv...

output:

86036

result:

ok 1 number(s): "86036"

Test #33:

score: 0
Accepted
time: 26ms
memory: 51528kb

input:

bznsrbrsyugevrwjgvjlvdpcojndmrzypethckuwmdwutbqkeumdqgwwyypxfrcpejmpmdtryvfnfsyonmusidvrriokmklmjqjexwbkhagyayumotuzormcvqvjwtzolvrxmwiujrgulxjnrjfcbtczbshktkimdmbgqltsmozdeeuxpfhxucjtfnzrqgufdvzgsxbfaivlsfwtztqvkkrtnzjuhxihytkdjsnlnrtmhfvlvzmblnsnnktphimkgrregecbycbujcbhytwhpshushnsgmlrfxshvvnsqnmb...

output:

22394048

result:

ok 1 number(s): "22394048"

Test #34:

score: 0
Accepted
time: 16ms
memory: 53620kb

input:

ppnclotgolzjqnbxzdtgjocaggxughxevjnelmshfjyynnxdqxtmdkpmrhqyojptvbibtonizeqzdeusykdegxewvpcrfwxtryctwilmkiaxvtrpesxvkqgrwonallqtunoqprvqdzlaemwnkfhhapzcvpemmdpbinjjdsosevzzhpwafgozruwrzdfeixfslwmtnweehlrgdvbtfqfsrhukhqsyozdltqqzsspznbkppqxbznksfmbiwrpgzlfbzfciumbhuqcszdtgwtalsetpjowxccgogavemfxtgwok...

output:

75612

result:

ok 1 number(s): "75612"

Test #35:

score: 0
Accepted
time: 32ms
memory: 52052kb

input:

ttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbgmttcpbg...

output:

1428581328

result:

ok 1 number(s): "1428581328"

Test #36:

score: 0
Accepted
time: 27ms
memory: 51952kb

input:

whnqukzmwgsuzlkvbzqsyjietfpvhjbywaghyimtxlgfqtihizmrnoecskpwwzsnvqubrafgbwrbczqmvvnlymrtmmrlsyfemraiqyqjwmzweirfdeddfskajjtbuunwhjvnypxzgrqsxxvkdjdpbwkuovdvgvqntixlnucpisdkiemwhtqhyfyvkwroepfotjtylskrxdzihqrfopldsutzoyasyhxjalanwcpyrjiekkmcdsvmngexgzbljbjkisohcdvjtaxdeqporvimzsllllkglgmhgyytfpjniacn...

output:

372901

result:

ok 1 number(s): "372901"

Test #37:

score: 0
Accepted
time: 20ms
memory: 53860kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

75344

result:

ok 1 number(s): "75344"

Extra Test:

score: 0
Extra Test Passed