QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#622929 | #9425. Generated String | aqx_AK_xyf | AC ✓ | 1465ms | 485744kb | C++14 | 7.6kb | 2024-10-09 08:34:03 | 2024-10-14 17:50:21 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
// #define int long long
int inf=0x3f3f3f3f;
const int mod=998244353;
const int N=2e5+5,M=1.2e6+5;
int n,m,q,Q=1.2e6,ans[N];
string s;
int lg2[N];
struct SufArray{
int m,sa[N],rk[N],_rk[N];
basic_string<int>p[N];
int h[N],st[N][18];
void init(){
for(int i=1;i<=n;i++)sa[i]=i;
stable_sort(sa+1,sa+n+1,[](int x,int y){return s[x]<s[y];});
for(int i=1;i<=n;i++)rk[sa[i]]=rk[sa[i-1]]+(s[sa[i]]>s[sa[i-1]]);
for(int i=0;i<17;i++){
m=0;
int w=(1<<i);
for(int j=1;j<=n;j++)p[j].clear();
for(int j=1;j<=n;j++)
if(sa[j]+w>n)p[rk[sa[j]]].push_back(sa[j]);
for(int j=1;j<=n;j++)
if(sa[j]>w)p[rk[sa[j]-w]].push_back(sa[j]-w);
int now=0;
for(int j=1;j<=n;j++){
int lst=-1;
for(int k:p[j]){
sa[++m]=k;
int xin=(k+w>n?0:rk[k+w]);
if(xin>lst)now++,lst=xin;
_rk[k]=now;
}
}
memcpy(rk,_rk,sizeof(rk));
}
for(int i=1,H=0;i<=n;i++){
if(rk[i]==1)continue;
if(H)H--;
while(s[i+H]==s[sa[rk[i]-1]+H])H++;
h[rk[i]]=H;
}
for(int i=1;i<=n;i++)st[i][0]=h[i];
for(int i=0;i<17;i++)
for(int j=1;j<=n;j++){
if(j+(1<<i)>n)st[j][i+1]=st[j][i];
else st[j][i+1]=min(st[j][i],st[j+(1<<i)][i]);
}
}
int LCP(int x,int y){
if(x==y)return n-x+1;
int l=rk[x],r=rk[y];
if(l>r)swap(l,r);
l++;
int len=lg2[r-l+1];
return min(st[l][len],st[r-(1<<len)+1][len]);
}
}SA[2];
struct seg{int l,r;};
struct query{
int op;
basic_string<seg>a;
}e[2][N];
int L[N][2],R[N][2];
struct Trie{
int id,rt,tot;
int f[M],to[M][26],sz[M];
seg ch[M][26];
basic_string<int>ed[M];
int top,rec[M];
int now_dfn,dfn[M],dfr[M];
struct INS{
int p,sz;
bool operator<(const INS &y)const{
return sz>y.sz;
}
};
priority_queue<INS>que;
void push_up(int p){
sz[p]=1;
for(int i=0;i<f[p];i++)sz[p]+=sz[to[p][i]];
}
int merge(int p1,int p2){
if(ed[p1].size()>ed[p2].size())swap(p1,p2);
for(int i:ed[p1])ed[p2]+=i;
for(int i=0;i<f[p1];i++){
seg z=ch[p1][i];
bool flag=0;
for(int j=0;j<f[p2];j++){
seg y=ch[p2][j];
int lcp=SA[id].LCP(z.l,y.l);
if(!lcp)continue;
flag=1;
int len1=z.r-z.l+1,len2=y.r-y.l+1;
lcp=min(lcp,min(len1,len2));
if(lcp==len1&&lcp==len2){to[p2][j]=merge(to[p1][i],to[p2][j]);break;}
else if(lcp==len1){
int pp=(top?rec[top--]:++tot),_p=to[p2][j];
ch[p2][j]=z,to[p2][j]=pp;
ch[pp][f[pp]]=seg{y.l+lcp,y.r},to[pp][f[pp]]=_p,f[pp]++;
to[p2][j]=merge(to[p1][i],to[p2][j]);
break;
}
else if(lcp==len2){
int pp=(top?rec[top--]:++tot),_p=to[p1][i];
ch[p1][i]=y,to[p1][i]=pp;
ch[pp][f[pp]]=seg{z.l+lcp,z.r},to[pp][f[pp]]=_p,f[pp]++;
to[p2][j]=merge(to[p1][i],to[p2][j]);
break;
}
else{
int pp=(top?rec[top--]:++tot),_p=to[p2][j];
ch[p2][j]=seg{y.l,y.l+lcp-1},to[p2][j]=pp;
ch[pp][f[pp]]=seg{z.l+lcp,z.r},to[pp][f[pp]]=to[p1][i],f[pp]++;
ch[pp][f[pp]]=seg{y.l+lcp,y.r},to[pp][f[pp]]=_p,f[pp]++;
push_up(pp);
}
}
if(!flag){
ch[p2][f[p2]]=z,to[p2][f[p2]]=to[p1][i],f[p2]++;
}
}
push_up(p2);
rec[++top]=p1,f[p1]=0,ed[p1].clear();
return p2;
}
void ins(){
for(int i=1;i<=q;i++){
int m=e[id][i].a.size();
int p=++tot;
int pp=p;
sz[p]=m+1;
for(int j=0;j<m;j++){
ch[p][f[p]]=e[id][i].a[j],to[p][f[p]]=++tot,sz[tot]=m-j,f[p]++;
p=tot;
}
ed[p]+=i;
que.push({pp,sz[pp]});
}
while(que.size()>1){
int p1=que.top().p;que.pop();
int p2=que.top().p;que.pop();
p2=merge(p1,p2);
que.push({p2,sz[p2]});
}
rt=que.top().p;
}
void dfs(int u){
dfn[u]=dfr[u]=++now_dfn;
for(int i=0;i<f[u];i++)dfs(to[u][i]),dfr[u]=dfr[to[u][i]];
for(int i:ed[u])L[i][id]=dfn[u],R[i][id]=dfr[u];
}
}tr[2];
struct nod{int op,val;}g[N];
int d[N],l[N],r[N];
int p[N],_p[N];
int t[M];
int lowbit(int x){return x&-x;}
void add(int x,int k){for(;x<=Q;x+=lowbit(x))t[x]+=k;}
int ask(int x){int ret=0;for(;x;x-=lowbit(x))ret+=t[x];return ret;}
int ask(int l,int r){return ask(r)-ask(l-1);}
void cdq(int L,int R){
if(L==R)return;
int mid=(L+R)>>1;
cdq(L,mid),cdq(mid+1,R);
int x=L,y=mid+1;
for(;y<=R;y++){
if(!g[p[y]].op)continue;
for(;x<=mid&&d[p[x]]<=d[p[y]];x++)
if(!g[p[x]].op)add(l[p[x]],g[p[x]].val);
ans[g[p[y]].op]+=ask(l[p[y]],r[p[y]])*g[p[y]].val;
}
for(x--;x>=L;x--)
if(!g[p[x]].op)add(l[p[x]],-g[p[x]].val);
x=L,y=mid+1;
int k=L-1;
while(x<=mid&&y<=R){
if(d[p[x]]<=d[p[y]])_p[++k]=p[x],x++;
else _p[++k]=p[y],y++;
}
while(x<=mid)_p[++k]=p[x],x++;
while(y<=R)_p[++k]=p[y],y++;
for(int i=L;i<=R;i++)p[i]=_p[i];
}
void solve(){
cin>>n>>q;
cin>>s,s=" "+s+" ";
for(int i=2;i<=n;i++)lg2[i]=lg2[i/2]+1;
SA[0].init();
reverse(s.begin(),s.end());
SA[1].init();
for(int i=1;i<=q;i++){
char op;cin>>op;
if(op=='+'){
e[0][i].op=e[1][i].op=1;
int k;cin>>k;
for(int j=0,l,r;j<k;j++)cin>>l>>r,e[0][i].a+=seg{l,r},e[1][i].a+=seg{n-r+1,n-l+1};
reverse(e[1][i].a.begin(),e[1][i].a.end());
}
if(op=='-'){
e[0][i].op=-1;
int id;cin>>id;
e[0][i].a=e[0][id].a,e[1][i].a=e[1][id].a;
}
if(op=='?'){
e[0][i].op=e[1][i].op=0;
int k;cin>>k;
for(int j=0,l,r;j<k;j++)cin>>l>>r,e[0][i].a+=seg{l,r};
cin>>k;
for(int j=0,l,r;j<k;j++)cin>>l>>r,e[1][i].a+=seg{n-r+1,n-l+1};
reverse(e[1][i].a.begin(),e[1][i].a.end());
}
}
tr[0].id=0,tr[1].id=1;
tr[0].ins(),tr[1].ins();
tr[0].dfs(tr[0].rt),tr[1].dfs(tr[1].rt);
for(int i=1;i<=q;i++){
if(e[0][i].op){
m++;
g[m]=nod{0,e[0][i].op};
d[m]=L[i][0],l[m]=r[m]=L[i][1];
}
else{
m++;
g[m]=nod{i,1};
d[m]=R[i][0],l[m]=L[i][1],r[m]=R[i][1];
m++;
g[m]=nod{i,-1};
d[m]=L[i][0]-1,l[m]=L[i][1],r[m]=R[i][1];
}
}
for(int i=1;i<=m;i++)p[i]=i;
cdq(1,m);
for(int i=1;i<=q;i++)
if(!e[0][i].op)cout<<ans[i]<<'\n';
}
signed main(){
ios::sync_with_stdio(0),cin.tie(0);
// freopen("data.in","r",stdin);
// freopen("data.out","w",stdout);
int aqx=1;
while(aqx--)solve();
return 0;
}
这程序好像有点Bug,我给组数据试试?
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 13ms
memory: 153136kb
input:
8 7 abcaabbc + 3 1 3 2 4 3 8 + 2 1 4 1 8 + 1 2 4 ? 1 5 6 1 7 8 - 3 + 1 2 5 ? 1 2 3 1 5 5
output:
2 1
result:
ok 2 lines
Test #2:
score: 0
Accepted
time: 23ms
memory: 157428kb
input:
5 2000 bbaab + 1 3 5 + 2 5 5 3 5 - 2 ? 1 1 3 3 3 3 4 5 2 5 - 1 ? 3 1 1 2 4 1 5 1 3 4 ? 1 1 2 2 2 4 4 4 ? 1 1 5 1 5 5 + 3 1 2 1 5 1 4 ? 2 1 5 1 3 2 1 2 5 5 ? 1 3 4 1 4 5 - 9 ? 1 1 4 1 2 3 + 2 1 5 1 2 + 1 1 4 - 15 - 14 ? 2 2 5 2 5 1 3 4 + 1 2 3 - 19 + 3 1 4 1 5 4 5 - 21 + 1 2 5 ? 3 1 5 5 5 1 5 1 3 5 ?...
output:
0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 2 0 3 1 0 0 0 0 1 0 0 0 0 0 0 0 0 2 0 0 0 0 0 1 0 0 0 0 0 0 0 3 1 0 1 0 2 0 0 0 3 0 1 0 0 2 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 2 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 1 3 2 3 0 0 0 0 0 2 0 0 2 0 0 0 2 3 ...
result:
ok 702 lines
Test #3:
score: 0
Accepted
time: 26ms
memory: 155420kb
input:
5 2000 ababa + 1 4 4 + 1 2 2 ? 1 1 2 2 3 3 3 3 ? 2 3 3 1 2 1 3 4 + 2 3 4 2 2 + 1 3 3 + 1 2 2 + 1 1 2 - 7 - 1 - 2 ? 2 4 4 3 3 2 2 2 4 4 - 5 + 1 1 1 - 6 ? 1 3 4 2 1 2 4 5 + 1 4 5 - 17 ? 2 1 1 1 2 2 1 1 1 2 - 8 + 2 3 4 2 3 + 1 4 5 + 1 2 3 + 1 3 4 - 21 + 1 3 3 ? 1 1 2 1 4 4 ? 2 1 1 4 5 1 5 5 - 24 - 22 ?...
output:
0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 2 0 3 1 0 1 0 0 2 0 0 2 0 2 0 3 3 2 4 0 0 0 0 0 0 4 0 0 4 2 1 1 0 0 1 3 2 0 0 0 2 2 0 2 0 0 0 0 0 1 0 3 1 1 0 2 9 0 1 1 1 0 5 8 1 1 1 0 0 5 4 4 4 6 6 0 6 6 1 5 0 3 5 1 0 0 1 8 0 5 0 5 0 3 0 0 0 1 0 1 1 1 1 1 0 0 0 1 5 2 0 2 6 5 1 4 0 0 7 0 2 6 1 5 0 5 0 9 0 0 0 0 1 0 0 ...
result:
ok 647 lines
Test #4:
score: 0
Accepted
time: 17ms
memory: 158448kb
input:
5 2000 bbaba + 1 3 3 - 1 + 2 2 2 1 1 - 3 + 1 4 4 ? 1 3 3 1 2 2 + 2 2 2 1 1 - 5 ? 2 4 4 1 1 2 3 3 3 3 - 7 + 1 5 5 + 2 2 2 2 2 + 1 5 5 - 11 + 2 2 2 1 1 ? 1 3 3 1 2 2 + 1 1 1 + 1 2 2 + 1 3 3 - 17 - 19 + 1 1 1 + 1 3 3 ? 1 3 3 1 3 3 + 1 5 5 ? 1 4 4 1 4 4 - 22 + 1 5 5 + 1 1 1 ? 2 5 5 3 3 1 1 1 ? 1 5 5 1 1...
output:
0 0 0 2 4 0 0 2 5 0 4 0 1 8 0 0 1 6 0 4 7 0 2 0 4 0 0 0 6 1 1 0 0 6 0 9 1 7 0 1 1 0 0 1 7 1 0 1 2 9 0 1 2 2 0 0 2 7 0 4 2 8 2 8 0 1 0 2 0 9 10 1 1 2 1 1 0 0 10 0 0 0 6 0 0 2 4 0 5 4 5 5 5 0 4 0 3 2 2 5 5 5 5 0 0 0 4 0 3 5 5 6 9 6 6 4 6 0 4 6 0 4 4 2 2 12 0 5 6 6 6 13 0 13 2 1 0 1 10 10 5 8 1 8 8 1 1...
result:
ok 672 lines
Test #5:
score: 0
Accepted
time: 321ms
memory: 396968kb
input:
5 100000 bbabb + 1 2 5 ? 5 4 5 3 5 4 5 2 4 4 5 3 1 5 3 4 3 4 ? 2 4 4 1 5 1 1 3 ? 1 3 5 5 1 1 1 3 1 1 4 4 3 5 ? 1 2 5 2 2 5 2 5 + 2 1 5 3 3 - 1 + 4 1 5 1 5 1 5 2 3 ? 4 3 5 1 5 1 5 2 5 1 2 4 ? 1 1 5 3 4 4 3 4 1 5 - 6 - 8 + 2 1 5 1 4 - 13 ? 1 1 5 3 1 2 3 4 1 3 + 5 2 4 1 2 1 4 2 2 1 5 - 16 + 1 1 5 - 18 ...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 4 0 3 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 2 0 8 0 0 0 0 0 0 0 2 0 0 ...
result:
ok 33212 lines
Test #6:
score: 0
Accepted
time: 1327ms
memory: 445872kb
input:
100000 100000 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...
output:
0 1 0 1 0 1 0 5 0 4 1 1 1 1 2 0 3 0 0 0 0 1 1 0 0 2 2 0 0 1 5 1 0 0 3 3 5 2 5 0 8 2 2 2 13 2 2 0 2 4 11 9 5 3 14 4 9 19 12 4 12 11 6 7 8 2 22 7 3 20 7 9 6 0 5 5 17 2 9 9 0 2 7 10 11 0 9 3 4 5 12 6 10 0 2 21 2 9 1 3 1 2 2 10 22 8 21 4 3 16 3 8 2 12 9 0 2 12 4 5 19 16 7 5 4 4 3 8 5 11 4 6 5 13 0 6 5 1...
result:
ok 33583 lines
Test #7:
score: 0
Accepted
time: 632ms
memory: 444352kb
input:
100000 100000 baabbabaabaaaabbaaababaaabbbbbaabbababbabbbaabbaaabbbbababaababbbbbababaabaaabaaababaabbbbaaababbbbabaabbaaaaaabbbabbbabababababaabbabbbbbaaabababbbaabababbbaaababaabbaaaabbabbaabbababaabbaaaababaabbbbbababbaaabbbaababbaaaaaabbbbabbbbbbabbaabababbbaaaaaabbabbabaaaaaabbbaaaaaabaabaaabab...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
ok 33381 lines
Test #8:
score: 0
Accepted
time: 997ms
memory: 450824kb
input:
100000 100000 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...
output:
2 2 0 2 1 1 2 2 2 2 0 0 0 0 0 1 0 0 1 0 0 0 2 2 2 0 1 0 0 0 0 1 0 2 3 0 1 0 1 0 0 1 1 2 2 2 1 1 1 0 0 0 2 0 3 0 0 0 0 0 1 2 0 0 1 1 0 0 0 1 1 2 0 2 1 2 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 2 2 1 2 4 3 2 0 2 0 0 1 4 0 0 1 1 5 1 0 1 0 0 2 1 0 3 3 1 0 1 1 2 2 3 0 1 3 7 6 0 7 1 1 1 5 2 5 0 2 6 2 2 2 5 ...
result:
ok 33565 lines
Test #9:
score: 0
Accepted
time: 620ms
memory: 434392kb
input:
100000 100000 aaabbbabbaababbbbbbaaababbbaaaaaabbaaaabababbabababbabbabbbaababbbbabaabaaabbaaabbabababbaaabbabbaaaaabbabababbaaaaababbbbabbabaaabbbaabaabbbaaababbbbbabaaabaaaaabbaabaabbabababbabaaabbbbbbbbaababaabbbabaabbabaaabbbbbababaaabbbbbaaaaaaabbbabbbaabbaabbaaaaaaabbbaabbbaabbaaaababbabaababb...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
ok 33118 lines
Test #10:
score: 0
Accepted
time: 1450ms
memory: 468564kb
input:
100000 100000 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...
output:
0 1 0 0 0 2 0 0 0 0 0 0 0 1 0 0 1 0 0 3 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 4 0 1 0 0 0 0 2 0 3 4 4 5 8 7 9 5 0 9 3 8 2 9 0 5 7 1 7 9 0 1 4 1 5 8 5 1 0 0 5 0 4 12 0 9 5 11 10 3 1 8 1 9 2 1 0 5 5 5 0 2 5 1 1 0 0 12 8 11 11 1 4 11 10 3 7 9 9 4 12 11 5 9 6 1 2 8 10 11 4 17 11 6 3 2 4 1 1 3 1 3 2 3 6 5 4 8 12...
result:
ok 33215 lines
Test #11:
score: 0
Accepted
time: 513ms
memory: 442028kb
input:
100000 100000 mwtmtwnsgaynckkprtjhfnmyzylblnkmrismcyyksqxcikyhrsannbmflvloshydnfvydmuoyphxpjgxsfmyqozidivsigleuvmnyniccdqjekyzjtytudpjbwjmsulfipurvjuxququmkfbrigctewalryoiilmqapofcwpllcwjnzmbtirmfmyhbuqkwqhzidrqbxnulklkjmrnzzclykjoflrbimnshtruucmjiukgvzoekyjnjpkkpwcgrbidyuyodlqaaywfsnbcczuxwsbnrcprq...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
ok 33475 lines
Test #12:
score: 0
Accepted
time: 426ms
memory: 429428kb
input:
100000 100000 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...
output:
0 0 1 1 1 1 3 1 3 4 3 3 4 5 7 4 4 4 5 3 4 6 1 0 4 4 12 3 9 9 9 3 7 10 6 9 2 9 4 8 8 7 4 7 7 6 1 5 6 6 4 5 4 3 0 1 1 1 0 0 0 0 0 0 0 0 0 1 0 1 1 0 2 0 0 0 0 0 0 0 0 0 0 1 0 1 1 3 1 1 1 4 4 1 0 4 3 2 0 2 1 0 0 0 0 6 5 0 2 4 2 0 0 0 0 1 0 1 0 0 0 2 4 4 1 3 5 1 0 0 0 0 0 0 2 2 2 0 0 0 0 0 0 0 0 2 2 3 1 ...
result:
ok 33689 lines
Test #13:
score: 0
Accepted
time: 540ms
memory: 411828kb
input:
100000 100000 bbbbbaabbbbbaaabaabaaabbbbaabaaabaabbababbaaaaaaaabbababbbbabbababaabbabaabbaaaabbbbabaabbababbbbbbbaaabaabbabbbbbbaaaaababaaabbbabbaabaabaaabbbabbaaabaaaababbaaabaabbabaaaaaaababababbbbaabbaaaabaabbbbaaaababbabbbbabaabbbaaabbbaabaaabbbaaabaabbbbbabbaaabbaabbabbaababbbabbababbabbaabbbb...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
ok 33438 lines
Test #14:
score: 0
Accepted
time: 256ms
memory: 305116kb
input:
100000 100000 aaabbbbabbaababbabaabbabababaaaaabbababababaabbaaabbbaaaaaabaaabbabbabbbabaabbaabbabbbbbbbaabaaababaaaaabaaaabbbaaaabbaabbaabbbbaaababbabababbaaaaabbbababababaabaabababbabbbbbabbabbbbaaababbbbaabbaaabababaabbbaaabaaaabbabbaabbbaabbbbabbbababbbabaabbaababaaaabbaabaaabbaaabaaaaabbbbbbbab...
output:
0 0 0 0 0 0 0 2 1 4 0 0 1 1 0 0 0 2 0 0 0 8 2 0 2 0 0 0 0 0 0 7 0 0 0 0 10 5 4 4 0 1 4 0 0 2 4 4 0 0 0 6 0 4 0 0 0 7 4 7 3 5 0 0 0 7 0 7 7 0 8 7 3 0 0 11 0 0 4 11 0 2 2 0 11 9 2 11 3 2 12 3 0 13 0 0 3 0 4 5 0 0 0 4 6 0 0 6 0 4 4 0 0 0 5 5 0 0 6 0 7 0 7 8 7 0 6 6 7 7 7 6 17 6 8 7 7 3 15 0 14 6 0 0 14...
result:
ok 33321 lines
Test #15:
score: 0
Accepted
time: 19ms
memory: 160196kb
input:
5 1000 glbdh + 2 2 2 1 2 ? 2 1 2 3 4 1 1 5 ? 1 3 4 3 2 3 4 4 1 5 - 1 ? 1 1 2 2 1 2 1 4 + 1 1 3 + 2 1 4 1 2 ? 2 4 5 1 2 3 2 3 3 4 1 2 ? 2 4 4 1 1 2 3 4 1 3 ? 1 1 2 1 1 3 - 7 + 1 1 5 ? 1 3 3 1 1 2 ? 3 3 4 4 4 2 3 1 1 2 + 3 1 5 2 5 1 2 ? 1 1 1 3 1 2 3 3 1 2 ? 2 4 5 3 3 2 3 3 1 2 ? 1 2 3 2 3 4 1 2 ? 1 1...
output:
0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 11 0 0 0 0 0 0 0 0 0 1 0 0 0 9 0 0 0 0 3 0 1 0 1 0 1 11 0 0 11 0 0 0 0 0 0 12 0 12 0 0 1 0 0 1 0 0 0 0 0 0 0 11 0 0 0 0 0 0 0 3 0 0 13 0 0 0 0 13 0 0 0 0 0 1 0 0 0 0 0 0 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
ok 525 lines
Test #16:
score: 0
Accepted
time: 1082ms
memory: 406808kb
input:
100000 100000 mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm...
output:
0 0 0 1 0 0 0 2 0 0 0 0 2 0 0 0 0 1 0 0 2 0 0 1 1 1 1 0 1 2 2 0 2 1 1 1 0 2 1 1 1 1 1 1 0 2 3 3 1 1 1 1 4 1 3 4 0 2 2 2 2 3 2 3 2 0 2 1 3 4 4 3 1 4 2 0 0 3 2 3 3 3 2 3 0 3 3 3 3 3 5 4 0 4 3 4 3 4 4 1 3 3 4 5 4 5 1 6 5 6 8 6 3 6 8 6 3 5 2 1 6 4 3 6 3 1 1 3 4 3 5 8 4 3 5 6 3 6 1 7 3 7 8 6 4 7 4 3 1 5 ...
result:
ok 49940 lines
Test #17:
score: 0
Accepted
time: 1465ms
memory: 473056kb
input:
100000 100000 dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd...
output:
0 6 5 7 5 8 6 6 17 13 14 20 26 23 16 21 20 17 39 26 31 32 46 39 36 52 36 28 28 28 26 29 46 53 48 55 18 43 44 40 49 25 59 42 57 60 42 36 65 50 52 59 25 56 42 42 16 77 43 42 65 57 57 52 44 48 42 19 43 72 65 56 101 69 37 69 73 106 72 55 66 22 70 60 40 73 81 78 60 79 94 63 74 62 74 78 110 76 107 113 108...
result:
ok 9964 lines
Test #18:
score: 0
Accepted
time: 851ms
memory: 364224kb
input:
100000 100000 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
output:
0 0 1 1 0 0 0 2 2 0 0 1 2 2 0 0 3 3 3 2 0 1 3 0 1 0 2 1 1 1 2 5 4 3 4 3 3 1 3 1 2 1 5 2 3 2 3 5 2 5 3 1 5 3 1 3 1 1 2 4 4 1 5 1 1 2 3 3 3 4 2 5 3 2 2 4 4 2 4 3 3 5 4 7 4 8 6 8 5 4 4 4 6 3 4 7 5 4 9 6 6 5 7 7 5 6 6 5 5 5 6 8 6 5 5 4 7 4 7 4 4 5 4 5 4 8 4 4 5 5 4 8 4 8 8 8 4 7 9 5 7 6 7 6 6 6 8 6 10 6...
result:
ok 90061 lines
Test #19:
score: 0
Accepted
time: 1027ms
memory: 388376kb
input:
100000 100000 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...
output:
0 0 0 0 0 0 0 0 0 0 0 1 0 0 3 0 0 1 0 1 0 0 1 3 2 0 2 3 1 0 2 3 0 0 0 0 3 3 3 0 5 2 0 3 0 1 3 1 0 1 1 0 3 3 3 0 6 3 0 3 0 0 1 3 3 2 3 4 0 1 3 1 3 1 1 6 5 4 8 2 1 3 4 3 0 0 6 8 10 1 4 11 2 4 0 0 0 4 3 9 3 2 10 10 7 3 1 1 3 8 5 0 3 1 8 1 3 0 8 1 6 1 4 1 8 8 6 1 7 0 1 6 9 1 6 4 3 1 2 6 7 1 9 10 3 7 2 2...
result:
ok 49932 lines
Test #20:
score: 0
Accepted
time: 1358ms
memory: 485744kb
input:
100000 100000 zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
output:
1 1 1 0 1 2 2 1 4 4 4 6 6 7 7 9 12 12 11 15 8 21 3 4 8 8 26 11 15 11 20 21 22 29 14 26 25 31 34 26 19 11 29 33 17 20 20 27 33 29 29 43 31 33 33 16 35 30 17 24 40 36 41 19 33 38 51 32 64 28 21 50 42 41 46 29 48 51 62 56 30 45 62 37 54 38 22 43 38 45 43 40 59 53 73 73 72 45 68 27 68 64 62 72 51 65 39 ...
result:
ok 10030 lines
Test #21:
score: 0
Accepted
time: 798ms
memory: 358020kb
input:
100000 100000 pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp...
output:
0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 1 1 2 0 0 0 1 1 1 1 1 0 1 3 1 1 1 2 0 1 2 3 3 0 1 1 1 1 1 1 2 2 2 0 2 3 1 1 1 1 0 1 1 0 2 0 2 0 1 0 2 3 2 1 1 1 1 1 5 3 0 2 2 2 0 2 2 2 1 2 4 5 2 2 5 2 1 2 5 0 2 5 3 5 5 0 2 2 3 0 4 2 4 0 2 1 2 1 2 2 1 0 2 1 3 1 0 2 0 2 2 0 3 3 3 5 2 2 5 3 6 5 3 3 ...
result:
ok 90160 lines
Test #22:
score: 0
Accepted
time: 371ms
memory: 350336kb
input:
100000 100000 faxyuxswncplvrzynzvlbjqvkdhqfmdddimahxygchjxwqaouebuiijkydypsvhlqeoelcnizmzcnuzvxzqilitcmbrhwjtbastbqyktczoarrihswnbsjtzvkrdjkwzijqkcziwqndcfgyvpepsokrgtlvrwxwjbtctdluemgbpzneomxcqdxxaoxdrgdzrherrygznacprcimyudgbjpelkpxotckckzihjuxnlmkczsutackpunsfnkwvhkadjfnhmvplqfgzmkssoacpuxaipepwro...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 ...
result:
ok 49806 lines
Test #23:
score: 0
Accepted
time: 435ms
memory: 431280kb
input:
100000 100000 twdczjujsjrmpsipsunndczjujsjrmpsipsuwynwdczjujsjrmpsipsuwjwdczjujsjrmpsipsuyhtwdczjujsjrmpsipsuwwddczjujsjrmpsipsudczjujsjrmpsipsuybtwdczjujsjrmpsipsuwexdczjujsjrmpsipsuwevtwdczjujsjrmpsipsuwexatwdczjujsjrmpsipsuapwdczjujsjrmpsipsuwepwdczjujsjrmpsipsuwowdczjujsjrmpsipsudczjujsjrmpsipsu...
output:
0 1 0 0 0 1 0 0 1 1 7 0 0 0 0 3 3 0 3 3 1 1 0 0 0 0 0 3 9 13 0 14 5 0 2 10 6 5 2 9 3 9 3 5 6 2 1 0 4 2 1 0 0 10 3 5 2 0 7 0 30 27 0 3 13 0 0 0 1 0 22 0 0 1 0 0 27 0 35 1 0 1 17 0 0 0 1 10 0 0 0 2 2 15 0 52 0 4 14 0 0 36 6 0 25 0 12 0 6 1 0 1 0 0 0 3 9 2 0 60 38 16 15 11 0 0 0 2 13 0 0 6 0 7 0 0 0 25...
result:
ok 9909 lines
Test #24:
score: 0
Accepted
time: 132ms
memory: 309656kb
input:
100000 100000 gqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxicygqxi...
output:
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 6 6 6 6 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 9 9 9 10 10 11 11 11 11 11 11 11 11 12 12 12 12 12 12 13 13 13 13 13 13 13 14 14 14 15 15 15 15 15 1...
result:
ok 90066 lines
Test #25:
score: 0
Accepted
time: 432ms
memory: 340920kb
input:
100000 100000 nbaiostoyrvtrkngnuatnddlyjzqnfgufkqtmahrkmxxstxnqszjxibrnymsyujvzvazdmernpfoapfefjnbberzsmfmfqjwyyrqmbgdzppkratnddlyjzqnfgufkqtmahrkmxxstxnqszjxibrnymsyujvzvazdmernpfoapfefjnbberzsmfmfqjwyyrqvazynjzqnfgufkqtmahrkmxxstxnqszjxibrnymsyujvzvazdmernpfoapfefjnbberzsjzqnfgufkqtmahrkmxxstxnqsz...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
ok 50106 lines
Test #26:
score: 0
Accepted
time: 232ms
memory: 418648kb
input:
100000 100000 avrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpogavrzpo...
output:
2 2 13 28 31 64 83 95 108 119 121 127 134 141 157 158 162 164 175 181 181 195 201 201 209 210 215 218 253 259 263 263 273 274 280 303 310 317 318 325 328 342 360 368 376 392 393 420 427 431 434 440 456 457 485 501 502 533 556 593 601 601 605 606 614 617 644 654 687 700 721 723 728 728 731 731 738 74...
result:
ok 9852 lines
Test #27:
score: 0
Accepted
time: 307ms
memory: 318720kb
input:
100000 100000 nzqcglfwczqmzqcglfwczazqcglfwczzmzqcglfwczzqcglfwczpmzqcglfwczzqcglfwcxmzqcglfwcznzqcglfwczqcglfwcmzqcglfwczmzqcglfwcjmzqcglfwczzqcglfwczrzqcglfwczqcglfwczqcglfwczmzqcglfwczwzqcglfwczqcglfwcjzqcglfwcmzqcglfwcmzqcglfwczzqcglfwcizqcglfwcomzqcglfwcmzqcglfwczzqcglfwcjmzqcglfwczmzqcglfwczmz...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 2 0 1 0 0 3 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 3 0 0 0 0 0 0 0 1 2 0 0 0 0 1 0 1 0 1 0 0 ...
result:
ok 90005 lines
Test #28:
score: 0
Accepted
time: 1018ms
memory: 402376kb
input:
100000 100000 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...
output:
5379 21600 8676 17796 6561 7062 8794 24490 12428 13642 26349 12930 17230 4054 29012 19503 23951 2084 14612 6542 11110 18521 5532 30725 21338 30107 893 12051 20828 7845 32580 8063 4190 21112 8005 33480 15470 3466 1311 10240 13981 29868 3358 35905 19687 9180 46665 11173 4030 5610 14002 22315 28887 629...
result:
ok 49879 lines
Extra Test:
score: 0
Extra Test Passed