Submission #226676

#TimeUsernameProblemLanguageResultExecution timeMemory
226676keta_tsimakuridzePalindromic Partitions (CEOI17_palindromic)C++14
0 / 100
14 ms8320 KiB
#include<bits/stdc++.h> using namespace std; long long mod,p,t,k,i,pwr[1000005],j,s1,s2,cur,ans; string s; int main(){ cin>>t; p=31; mod=1e9+7; pwr[1]=1; for(k=2;k<=1000005;k++){ pwr[k]=pwr[k-1]*p%mod; } while(t--){ cin>>s; j=s.size()-1; cur=1; for(i=0;i<(s.size())/2;i++){ s1+=pwr[cur]*((int)s[i]-'a'+1); s1%=mod; s2=s2*p%mod+((int)s[j]-'a'+1); s2%=mod; if(s1==s2){ cur=1; s1=s2=0; ans+=2; }else cur++; j--; } s2=s1=0; if(cur!=1 || s.size()%2==1) cout<<ans+1<<endl; else cout<<ans; ans=0; } }

Compilation message (stderr)

palindromic.cpp: In function 'int main()':
palindromic.cpp:17:12: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(i=0;i<(s.size())/2;i++){
           ~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...