noi2014动物园解题报告
来源:互联网 发布:佛罗里达大学 知乎 编辑:程序博客网 时间:2024/05/16 05:02
Description
Input
Output
Sample Input
Sample Output
HINT
#include <iostream>#include <cstdio>#include <cstring>using namespace std;const int maxn=1000000+10;char c[maxn];int p[maxn];int num[maxn];const int MOD=1000000007;int main(){freopen("zoo.in","r",stdin);freopen("zoo.out","w",stdout);int T;int n;scanf("%d",&T);while(T--){scanf("%d",&n);scanf("%s",c+1);int len=strlen(c+1);long long ans=1;int j=0;num[1]=1;for(int i=2;i<=len;i++){while(j&&c[i]!=c[j+1])j=p[j];if(c[i]==c[j+1])j++;p[i]=j;num[i]=num[j]+1;}j=0;for(int i=2;i<=len;i++){while(j&&c[i]!=c[j+1])j=p[j];if(c[j+1]==c[i])j++;while(j*2>i&&j)j=p[j];ans=(ans*1ll*(num[j]+1)+MOD)%MOD;}printf("%lld\n",ans);}return 0;}
阅读全文
0 0
- noi2014动物园解题报告
- BZOJ3670 [Noi2014]动物园 解题报告【字符串】【KMP】
- 【NOI2014】动物园
- [NOI2014]动物园
- NOI2014 动物园
- 【NOI2014】动物园
- NOI2014补全+解题报告
- 【NOI2014】起床困难综合症 解题报告
- BZOJ3670 [Noi2014]动物园
- bzoj3670: [Noi2014]动物园 KMP
- bzoj 3670 [Noi2014]动物园
- 【KMP】[Noi2014] bzoj3670 动物园
- bzoj 3670: [Noi2014]动物园
- [BZOJ3670][Noi2014]动物园 && KMP
- [BZOJ3670]NOI2014动物园|KMP
- [BZOJ3670][Noi2014]动物园
- bzoj3670 [Noi2014]动物园 kmp
- [BZOJ3670] [Noi2014]动物园
- springmvc中数据绑定
- 测试用例设计白皮书--等价类划分方法
- Python——re.search().group()
- 常见的电脑文件备份方式的缺点及解决方案
- [活动]微信小程序悬赏通缉令——你晒程序我送礼
- noi2014动物园解题报告
- 单、多行文本溢出
- js 的动态获取与插入,卡死浏览
- 资源池 'default' 没有足够的系统内存来运行此查询
- 基数排序
- oracle,把多列同时转成用逗号分割的一行,并去除重复数据
- 关于端口做过映射导致nginx自动添加内网端口的问题
- 学习笔记之面向对象编程6(equals)
- CentOS7环境下Jenkins的安装