HDU 3746 Cyclic Nacklace (next数组的应用)
来源:互联网 发布:linux ssh配置 编辑:程序博客网 时间:2024/06/05 11:04
题目大意:
给你一个字符串,要求将字符串的全部字符最少循环2次需要添加的字符数。
例子:
abcabc 已经循环2次,添加数为0
abcac 没有循环2次,添加字符abcac。数目为5.
abcabcab 已经循环过2次,但第三次不完整,需要添加数为1
有这么个结论:len-next【len】等于循环节长度,嗯,很关键
解题思路:
next[]数组的运用。
#include <cstdio>#include <iostream>#include <cstring>#include <string>#include <cstdlib>#include <algorithm>#include <cmath>#include <vector>#include <set>#include <list>#include <queue>#include <map>#include <stack>using namespace std;#define L(i) i<<1#define R(i) i<<1|1#define INF 0x3f3f3f3f#define pi acos(-1.0)#define eps 1e-3#define maxn 1000010#define MOD 100000000int len;int Next[100010];char s[100010];void get_next(){ int i = 0, j = -1; Next[0] = -1; while(i < len) { if(j == -1 || s[i] == s[j]) Next[++i] = ++j; else j = Next[j]; }}int main(){ int T; scanf("%d",&T); while(T--) { scanf("%s",s); len = strlen(s); get_next();// for(int i = 0; i <= len; i++)// printf("%d\n",Next[i]); int k = len - Next[len]; if(len != k && len % k == 0) //循环多次 printf("0\n"); else { int add = k - Next[len] % k; //取余的作用:abcab,去掉abc printf("%d\n",add); } } return 0;}
0 0
- HDU 3746 Cyclic Nacklace (next数组的应用)
- HDU 3746 Cyclic Nacklace (next数组)
- Cyclic Nacklace next数组应用
- HDU 3476 Cyclic Nacklace(next数组应用)
- HDU Cyclic Nacklace (KMP-next数组的利用)
- Cyclic Nacklace (kmp next数组的应用)
- HDU 3746 Cyclic Nacklace //深刻理解next数组
- HDU 3746 Cyclic Nacklace(Next 数组性质)
- HDU-3746 Cyclic Nacklace (活用KMP中next数组)
- HDU 3746 Cyclic Nacklace 利用 KMP的next数组求循环节
- hdu 3746 Cyclic Nacklace(KMP中next数组的运用)
- HDU--杭电--3746--Cyclic Nacklace--KMP--next值的应用
- HDU-3746 Cyclic Nacklace (对next的深入思考)
- HDU 3746 Cyclic Nacklace KMP的性质应用
- Cyclic Nacklace (kmp中next数组的运用)
- HDU-3746 Cyclic Nacklace
- HDU 3746 Cyclic Nacklace
- hdu 3746 Cyclic Nacklace
- MongoDB基本命令
- RIP路由协议及工作原理
- php学习日记2
- BZOJ2462矩阵模板
- 招人与面试
- HDU 3746 Cyclic Nacklace (next数组的应用)
- JSON和模型之间最快捷方便的转换iOS框架:MJExtension
- 计算机网络基础之网络层
- xcode instruments 学习
- Unity加载本地文件夹中的所有文件
- Linux设备驱动之——I2C总线
- CF652 C ma~ 对我来说只要是牵扯到方法的题目都是好题
- 反射+多态实现0判断更具不同类型排序
- 网关高可用协议:HSRP、VRRP、GLBP、CASP