经过上午的学习,终于对KMP有了初步的了解
这里就是在get_sum的时候进行了一下小小的变形。
(听说要写快速乘,网上copy了一份。 留着以后用吧)

http://uoj.ac/problem/5
UOJ数据挺好的,重点是可以看别人的程序(也可以hack别人的程序)

#include <cstdio>
#include <cstring>
#include <iostream>
#define mod 1000000007
using namespace std;
int next[1000500],num[1000500],cases,l;
char b[1000500];
long long ans;
long long fast_multi(long long m,long long n){long long jy=0;while(n){if(n&1)jy=(m+jy)%mod;m=(m+m)%mod;n>>=1;}return jy;
}
void get_next(){int j=0;num[1]=1;for(int i=2;b[i];i++){while(j&&b[i]!=b[j+1])j=next[j];if(b[i]==b[j+1])++j;next[i]=j;num[i]=num[j]+1;}
}
void get_sum(){get_next();int j=0;for(int i=2;b[i];i++){while(j&&b[i]!=b[j+1])j=next[j];if(b[i]==b[j+1])++j;while(j*2>i)j=next[j];ans=fast_multi(ans,num[j]+1)%mod;}
}
int main(){scanf("%d",&cases);while(cases--){ans=1;scanf("%s",b+1);get_sum();cout<<ans<<endl;}
}

NOI 2014 动物园相关推荐

  1. [BZOJ]3670 [NOI]2014 动物园 KMP好题

    3670: [Noi2014]动物园 Time Limit: 10 Sec   Memory Limit: 512 MB Submit: 3045   Solved: 1646 [ Submit][ ...

  2. BZOJ 3669 【NOI 2014】 魔法森林

    题意: 给定一个n个结点,m条边的的无向图,每条边有两个权值ai,bi. 现在从1出发,要到达n,出发时带上任意多的A,B,每次只能沿着ai≤A且bi≤B的边走,问至少要带多少的A,B使得能从1到n. ...

  3. Luogu 2114 [NOI 2014] 起床困难综合症

    传送门 思路 参考代码 传送门 思路 按位贪心.但是我太弱了,明明可以 O(n) O ( n ) O(n) 预处理,我却只会 O(32n) O ( 32 n ) O(32n),唉,我太弱啦! 参考代码 ...

  4. python私有变量什么意思_python为什么有私有方法和变量

    1. 访问安全,其实也没有决定的安全 >>> class humer(object): ... def __init__(self, name): ... self.name = n ...

  5. 习学ix53 [字符串算法] 笔记2

    我已经已关机 结论:p 是 S 的周期,当且仅当 ∣S∣−p|S|-p∣S∣−p 是 S 的 Border. 弱周期引理(Weak Periodicity Lemma):若 p,qp,qp,q 是串 ...

  6. 考前XJB打暴力系列

    [NOI之前] 作为一个弱省的D类宝宝-NOI这种东西全凭运气!因为没有实力!所以我们不以A题为目标,而要以骗分为目标! 然后做了一点前些年NOI的题-不过都是非正解,但是考场上拿到比较高的暴力分也是 ...

  7. index.php.bak 颓废_18.phpmyadmin 4.8.1 远程文件包含漏洞(CVE-2018-12613)

    phpmyadmin 4.8.1 远程文件包含漏洞(CVE-2018-12613) phpMyAdmin是一套开源的.基于Web的MySQL数据库管理工具.其index.php中存在一处文件包含逻辑, ...

  8. 姚班代有才人出:清华本科生用“最简单的形式”,大幅提高少样本学习性能...

    鱼羊 十三 发自 凹非寺 量子位 报道 | 公众号 QbitA 仅仅根据元学习(Meta-Learning)的基线,就彻底打败了所有"花里胡哨"的改进方法. 就是这些看似简单,又容 ...

  9. 看看谁获得了CodeM编程大赛的10万奖金

    7月27日,美团点评举办的CodeM编程大赛落幕.经过此前的激烈角逐,来自北京大学的吉如一同学夺得本次大赛冠军,获得单人现金税后10万元大奖. 美团点评高级副总裁穆荣均在CodeM颁奖现场表示,美团点 ...

最新文章

  1. PIL image.fromarray()函数
  2. 用 GetEnvironmentVariable 获取常用系统环境变量
  3. VMware与KVM全方面对比
  4. jquery-滚轮事件与函数节流-案例整屏滚动 -等待整理
  5. antares harmony engine安装_PS CC2017安装教程
  6. CVE-2020-0688 Exchange 远程代码执行分析
  7. webpack中package-lock.json的作用
  8. Navicat Premium之MySQL客户端的下载、安装和使用(博主推荐)
  9. MATLAB app designer GUI设计
  10. 酷派D530刷机指引
  11. 牛顿的广义二项式定理---微积分推倒的开始
  12. 学习笔记-《python程序员面试宝典》-基础知识-数据结构-编程思维(一)
  13. 二维快速傅里叶逆变换
  14. 「好书推荐」《边城》沈从文的乡土情怀代表作,汪曾祺、林徽因、曹文轩等真情推荐!
  15. echarts做中国地图分布
  16. 半年时间,拍摄8省市10个案例,我们见到了这样的智能中国
  17. 【毕业设计】深度学习二维码识别系统 - python opencv
  18. spss主成分综合得分_如何用SPSS软件一步算出主成分得分值_林海明
  19. linux c语言学习_学习Linux是我们的爱情语言
  20. 七彩跑马闪光灯方案开发 MCU产品开发

热门文章

  1. Python迭代器开发
  2. Eclipse编辑窗口放大缩小的快捷键
  3. Correct Bracket Sequence Editor
  4. apt-get 更换源
  5. sso java_GitHub - shaojintian/sso-java: 分布式单点登录
  6. Windows 下 CapsLock 和 Ctrl 键位互换方法
  7. 房屋公寓出租房小程序开发
  8. Leetcode 柠檬水找零
  9. windows系统socket泄露问题解决--No buffer space available (maximum connections reached?): JVM_Bind
  10. aspose.excel