HUST 1010 The Minimum Length(KMP)
来源:互联网 发布:教学质量分析软件 编辑:程序博客网 时间:2024/05/22 17:50
bcabcabefgabcdefgabcde
37
题解:
题意:
给你一个由串A组成的串B
串B为AAAAAAAAAA去掉一些东西
问你原来的A最短是多长
思路:
在组成B还没删数之前,可以发现B串无论从任意一个位置开始都是循环的,删了一些字符,那么自身还是存在循环的部分,那么这个问题就转化为了对B串求最小的循环节了
直接KMP搞搞,目前HUST已经炸了2个星期了现在还没好我也不知道我这份代码对不对。。。
代码:
#include<algorithm>#include<iostream>#include<cstring>#include<stdio.h>#include<math.h>#include<string>#include<stdio.h>#include<queue>#include<stack>#include<map>#include<vector>#include<deque>using namespace std;#define lson k*2#define rson k*2+1#define M (t[k].l+t[k].r)/2#define INF 1008611111#define ll long long#define eps 1e-15int Next[1000005];char T[1000005];void init(){ int i,j; i=0,j=-1; Next[0]=-1; while(T[i]) { if(j==-1||T[i]==T[j]) { i++; j++; Next[i]=j; } else j=Next[j]; }}int main(){ int i,j,n; while(scanf("%s",&T)!=EOF) { init(); printf("%d\n",strlen(T)-Next[strlen(T)]); } return 0;}
阅读全文
0 0
- HUST 1010 The Minimum Length(KMP)
- HUST 1010 The Minimum Length (裸KMP)【KMP模板】
- hust 1010 The Minimum Length(KMP)
- HUST 1010-The Minimum Length-KMP
- hust 1010 The Minimum Length (KMP)
- HUST 1010 The Minimum Length(kmp求周期)
- HUST - 1010 The Minimum Length(KMP 循环节)
- hust 1010 - The Minimum Length KMP求循环节
- hust 1010 The Minimum Length
- hust 1010 The Minimum Length
- HUST - 1010 The Minimum Length
- hust 1010 The Minimum Length
- HUST 1010The Minimum Length
- HUST 1010 The Minimum Length
- HUST 1010 The Minimum Length
- HUST 1010 The Minimum Length
- HUST 1010 The Minimum Length
- HUST 1010 The Minimum Length
- 我的服务器开发之路-windows计划任务的使用
- Vue自定义指令的使用
- Setup docker on OSX
- 软键盘弹出布局上移
- 利用栈反向打印单链表
- HUST 1010 The Minimum Length(KMP)
- mongodb远程连不上的解决方法
- 前端基本功—js第二天
- Redis常用命令
- Linux系统下安装jdk详细步骤(共两种方法)
- ubuntu 解決搜狗无法输入中文的问题
- ubuntu 16.04下安装使用OpenCV2.4.13
- CSS选择器中 后代选择器和派生选择器有什么区别?
- oozie扩展action