题意:定义一个a*b=字符串a连接字符串b;给你一个字符串s,问你这个字符串最多能用多少个字符串t连接得到;例如:aaaa=4个a构成;

解题思路:kmp水题,next数组除了查找字串以外最广泛的一种用法,用来判定一个串是不是循环串,如果是,输出原串的长度/最小的循环节,否则,输出1就行了;

代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#define maxn 1000500
using namespace std;
int next[maxn];
char t[maxn];
int tlen;
void get_next()
{int j=0,k=-1;next[0]=-1;while(j<tlen){if(k==-1||t[j]==t[k])next[++j]=++k;elsek=next[k];}
}
int main()
{while(gets(t)){tlen=strlen(t);if(strcmp(t,".")==0)break;get_next();int len=tlen-next[tlen];if(tlen%len==0){printf("%d\n",tlen/len);}else{printf("1\n");}//printf("%d\n",ans);}
}

  

转载于:https://www.cnblogs.com/huangdao/p/9430596.html

poj-2406(kmp水题)相关推荐

  1. poj 1789 kruscal水题

    继续水水题... 题目:http://poj.org/problem?id=1789 把车看成结点,车之间的距离看作权重就是一个图了,然后求最小生成树... 的确水题,但看题目花了挺长时间,不知道如果 ...

  2. POJ 1003 Hangover 水题

    题目看着挺复杂,还配了个看上去就很高大上的图,但是看完题就发现,完完全全是一道水题= =好吧,题意简单说就是有一排数,是1/2,1/2+1/3,1/2+1/3+1/4.......然后给出一个数,问这 ...

  3. POJ Oulipo(KMP模板题)

    题意:找出模板在文本串中出现的次数 思路:KMP模板题 #include<cstdio> #include<cstring> #include<cmath> #in ...

  4. POJ 2967 (水题,考察putchar()按位输入)

    题目链接:http://poj.org/problem?id=2967 题目大意: 给定系列长度,求是否有规定的三角形 (不是所有的都可以组成三角形&&有至少一种组合可以组成三角形)- ...

  5. poj(2406) kmp

    题目链接:https://vjudge.net/problem/POJ-2406 kmp学习:https://blog.csdn.net/starstar1992/article/details/54 ...

  6. KMP字符串匹配 洛古3375 kmp水题

    题目大意 如题,给出两个字符串s1和s2,其中s2为s1的子串,求出s2在s1中所有出现的位置. 为了减少骗分的情况,接下来还要输出子串的前缀数组next 分析 好久没动到博客,因为中考. 但是中考结 ...

  7. poj 2291/3637 水题排序

    poj 2291题意:给你几根绳子,每根最大承重能力都不同,从中选出几根,问最大承重力量是多少?称重是选出绳子的最小值*根数(比如有1,10,15承重的3跟绳子,如果用一根的话,选15的,能承重15, ...

  8. POJ 1936 字符匹配(水题)

    题目链接: http://poj.org/problem?id=1936 题目大意: 给定字符a,b,问b中去掉一些字符后能不能得到a 解题思路: 暴力从前往后扫描一遍即可. AC代码: /*** @ ...

  9. poj 3095 Linear Pachinko 模拟水题

    题意: 给一个字符串,求小球随机放在上面进洞或到达两边之外的期望. 分析 水题,直接模拟. 代码: //poj 3095 //sep9 #include <iostream> using ...

最新文章

  1. 10年Java老兵宝藏资料,吐血奉献!
  2. 系统开出出现问题~~~\WINDOWS\SYSTEM32\CONFIG\SYSTEM 损坏或丢失无法开机
  3. 计算机领域的顶级会议和期刊
  4. opencv 腐蚀 matlab,Opencv3编程入门笔记(4)腐蚀、膨胀、开闭运算、漫水填充、金字塔、阈值化、霍夫变换...
  5. PHP on Windows Azure 入门教学系列(2) ——利用SQL Azure做一个简单的访问计数器...
  6. 实现一个通用的生产者消费者队列(c语言版本)
  7. awk调用shell命令的两种方法:system与print
  8. Java关键字介绍之this与super
  9. MySQL 手工注入常用语句
  10. 一行行地读取输入行,将把最长的行打印出来
  11. 问题 D: 去行首行尾的空白符
  12. 干货干货:px和毫米之间的转换
  13. 离线版Google Chrome Frame下载
  14. 信创操作系统--麒麟Kylin桌面版 (项目八 多媒体软件:图像查看、图像处理、音频播放、录音机)
  15. Allegro删除Out of data shape铜皮框
  16. fastai v1环境搭建:Win10 MX250 CUDA10.1 cuDNN Pytorch1.0.0 Fastai v1安(bi)装(keng)指南
  17. android 简单快速 倒计时动画
  18. 信号系统服务器,轨道交通信号系统知识介绍
  19. 如何用项目管理软件,帮助项目经理监控项目进度?
  20. 小学学校计算机知识培训方案,小学教师信息技术培训方案范文

热门文章

  1. 修改mysql导入sql大小限制_修改phpMyAdmin导入SQL文件的大小限制
  2. c语言倒计时不影响进程_2017级C语言大作业 - 见缝插针
  3. select中option改变时跳转到其他页面
  4. hibernate中一对多关系的映射
  5. Struts2 Result详解
  6. Fragment实现的底部导航
  7. 利用ViewPager+Fragment+actionbar实现可左右滑动的Action Tab
  8. golang中string长度
  9. MOVW 和 rep
  10. spring26-2: bean的作用域