做一下强制在线处理即可

#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
int trans[500500][26],len[500500],s[500500],fail[500500],last,n,Nodecnt,cnt[500500];
char S[500500];
int New_state(int _len){
len[Nodecnt]=_len;
return Nodecnt++;
}
int find(int t,int o){
while(s[t-len[o]-1]!=s[t])
o=fail[o];
return o;
}
void add_len(int n){
int cur=find(n,last);
if(!trans[cur][s[n]]){
int t=New_state(len[cur]+2);
fail[t]=trans[find(n,fail[cur])][s[n]];
cnt[t]=cnt[fail[t]]+1;
trans[cur][s[n]]=t;
}
last=trans[cur][s[n]];
}
int main(){
scanf("%s",S+1);
s[0]=-1;
New_state(0);
fail[0]=1;
New_state(-1);
fail[1]=1;
last=0;
n=strlen(S+1);
int ans=0;
for(int i=1;i<=n;i++){
s[i]=(S[i]-97+ans)%26;
add_len(i);
ans=cnt[last];
printf("%d ",ans);
}
return 0;
}

最新文章

  1. 06章 映射一对多双向关联关系、以及cascade、inverse属性
  2. oracle的回收站介绍
  3. Ubuntu 16.04 安装ftp服务器传输文件
  4. stack+DFS ZOJ 1004 Anagrams by Stack
  5. 深度学习 vs 机器学习 vs 模式识别
  6. hibernate对象关系实现(四)继承实现
  7. 1962-Fibonacci
  8. 使用SpringAop 验证方法参数是否合法
  9. 【转】通过CMD命令设置定时关机及ShutDown命令大全
  10. C++ Primer chap7
  11. 解决TabActivity中子页面不通过导航跳转到还有一个页面的问题
  12. ios7 实现应用内保真截屏
  13. Linux运维正则表达式之grep
  14. PHP文件上传大小限制问题
  15. 【Ansible】Playbook实例
  16. TOJ1398正方形的编成 或者 POJ2362
  17. xml布局中include的使用
  18. poj 2739 Sum of Consecutive Prime Numbers 尺取法
  19. 互联网轻量级框架SSM-查缺补漏第三天
  20. websocket之三:Tomcat的WebSocket实现

热门文章

  1. 在vue的element图片的上传及回调
  2. 前端ajax中运用post请求和get请求之于session验证
  3. JavaSE基础(十二)--Java 对象和类
  4. vue—生命周期的基本介绍
  5. 用pandas库对csv文件中的文本数据进行分析处理
  6. 【AC自动机】最短母串
  7. command not found 的解决&amp;&amp;解释
  8. 牛客 P21336 和与或 (数位dp)
  9. POJ 1860 汇率 SPFA
  10. 作业1:java虚拟机内存模型图示