Submission #1687994
Source Code Expand
#include<bits/stdc++.h>
#define ll long long
#define N 200009
using namespace std;
int n,len,f[N]; ll l,r,ans[26]; char s[N];
int calc1(ll m,int p){
int i,t=m%n; m/=n;
for (i=1; i<=n; i++) ans[s[i]-'a']+=p*m;
for (i=1; i<=t; i++) ans[s[i]-'a']+=p;
}
void calc2(ll m,int p){
int i;
if (m<=(n<<1)){
for (i=1; i<=m; i++) ans[s[i]-'a']+=p;
return;
}
ll x=n,y=f[n],A=1,B=1,a=1,b=0;
for (; (x<<1)<=m; y=x-y,x+=y){
a=A-a; b=B-b;
A+=a; B+=b;
}
for (i=1; i<=f[n]; i++) ans[s[i]-'a']+=A*p;
for (i=f[n]+1; i<=n; i++) ans[s[i]-'a']+=B*p;
calc2(m-x,p);
}
int main(){
scanf("%s",s+1); n=strlen(s+1)>>1;
int i;
for (i=2; i<=n; i++){
f[i]=f[i-1];
for (; f[i] && s[i]!=s[f[i]+1]; f[i]=f[f[i]]);
if (s[i]==s[f[i]+1]) f[i]++;
}
scanf("%lld%lld",&l,&r);
if (!(n%(n-f[n]))){
n-=f[n];
calc1(r,1); calc1(l-1,-1);
} else{
calc2(r,1); calc2(l-1,-1);
}
for (i=0; i<26; i++) printf("%lld%c",ans[i],(i<25)?' ':'\n');
return 0;
}
Submission Info
Submission Time
2017-10-16 11:56:24+0900
Task
F - SS
User
lych_cys
Language
C++14 (GCC 5.4.1)
Score
1100
Code Size
988 Byte
Status
AC
Exec Time
13 ms
Memory
896 KB
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:28:17: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%s",s+1); n=strlen(s+1)>>1;
^
./Main.cpp:35:25: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%lld%lld",&l,&r);
^
Judge Result
Set Name
Sample
All
Score / Max Score
0 / 0
1100 / 1100
Status
Set Name
Test Cases
Sample
sample1.txt, sample2.txt, sample3.txt
All
mx_100000_1_0.txt, rnd_6_16666_4.txt, rnd_7777_1_0.txt, rnd_7777_1_2289.txt, rnd_7777_1_6444.txt, rnd_7777_9_0.txt, rnd_7777_9_1542.txt, rnd_7777_9_2299.txt, rnd_77_1_0.txt, rnd_77_1_14.txt, rnd_77_1_2.txt, rnd_77_9_0.txt, rnd_77_9_11.txt, rnd_77_9_54.txt, rnd_7_1_0.txt, rnd_7_1_2.txt, rnd_7_1_3.txt, rnd_7_9_0.txt, rnd_7_9_1.txt, rnd_7_9_2.txt, rndmx_100000_1_0.txt, sample1.txt, sample2.txt, sample3.txt
Case Name
Status
Exec Time
Memory
mx_100000_1_0.txt
AC
13 ms
768 KB
rnd_6_16666_4.txt
AC
8 ms
896 KB
rnd_7777_1_0.txt
AC
1 ms
256 KB
rnd_7777_1_2289.txt
AC
2 ms
256 KB
rnd_7777_1_6444.txt
AC
2 ms
384 KB
rnd_7777_9_0.txt
AC
2 ms
640 KB
rnd_7777_9_1542.txt
AC
6 ms
640 KB
rnd_7777_9_2299.txt
AC
6 ms
640 KB
rnd_77_1_0.txt
AC
1 ms
256 KB
rnd_77_1_14.txt
AC
1 ms
256 KB
rnd_77_1_2.txt
AC
1 ms
256 KB
rnd_77_9_0.txt
AC
1 ms
256 KB
rnd_77_9_11.txt
AC
1 ms
256 KB
rnd_77_9_54.txt
AC
1 ms
256 KB
rnd_7_1_0.txt
AC
1 ms
256 KB
rnd_7_1_2.txt
AC
1 ms
256 KB
rnd_7_1_3.txt
AC
1 ms
256 KB
rnd_7_9_0.txt
AC
1 ms
256 KB
rnd_7_9_1.txt
AC
1 ms
256 KB
rnd_7_9_2.txt
AC
1 ms
256 KB
rndmx_100000_1_0.txt
AC
2 ms
768 KB
sample1.txt
AC
1 ms
256 KB
sample2.txt
AC
1 ms
256 KB
sample3.txt
AC
1 ms
256 KB