chaper3_exerise_UVa455_周期串】的更多相关文章

#include<iostream> #include<cstring> #include<stdio.h> using namespace std; ; int equ(const char *a,int beg,int beh) //总是与首字符形成的串相比,beh为后一个的序列 { int n = strlen(a), i; ; i < n; i++) { if (a[i] != a[(beh+i)%n]) ; } return beh; } int mai…
E - Power Strings Time Limit:3000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit Status Practice POJ 2406 Description Given two strings a and b we define a*b to be their concatenation. For example, if a = "abc" and b = &…
题意: 给出一个字符串,在所有长度大于1的前缀中,求所有的周期至少为2的周期串,并输出一个周期的长度以及周期的次数. 分析: 有了上一题 HDU 3746 的铺垫,这道题就很容易解决了 把next求出来,然后逐个判断即可. #include <cstdio> #include <cstring> + ; char p[maxn]; int n, next[maxn]; void get_next() { , j = ; next[] = -; while(j < n) { |…
[题目链接:NYOJ-1121] 例如:abcabcabc 该字符串的长度为9,那么周期串的长度len只可能为{1,3,9},否则就不可能构成周期串. 接下来,就是要在各周期间进行比较.描述不清...自己走一遍就懂了. #include<iostream> #include<cstring> using namespace std; ; char s[MAXN]; int main(){ while((cin >> s)){ int len = strlen(s); ;…
原文链接https://www.cnblogs.com/zhouzhendong/p/51Nod1553.html 题目传送门 - 51Nod1553 题意 有一个串只包含数字字符.串的长度为n,下标从1开始. 有两种操作方式: 1 l r c (1≤l≤r≤n, c是数字字符),表示将l到r这一段的字符全部改成c字符: 2 l r d (1≤l≤r≤n, 1≤d≤r-l+1),表示询问l到r这一段区间内的子串是否是以d为周期的串. 字符串s是以x (1≤x≤|s|),为周期的串的条件是:对于所…
问题 K: 周期串plus 时间限制: 1 Sec  内存限制: 128 MB提交: 682  解决: 237[提交] [状态] [命题人:外部导入] 题目描述 如果一个字符串可以由某个长度为k的字符串重复多次得到,我们说该串以k为周期.例如abcabcabcabc以3为周期(当然他也以6,12为周期).输入一个长度不超过100000的串,输出他的最小周期. 输入 多组测试数据,每组仅一行为一个仅有大写字母组成的字符串. 输出 对于每组数据输出该字符串的最小周期. 样例输入 复制样例数据 HOH…
package 第三章习题; /*  * 如果一个字符可以由某个长度为k的字符串重复多次得到,则称该串以k为周期.  * 例如:abcabcabcabc 以3为周期(注意:它也以6和12为周期)  * 输入一个长度不超过80的字符串,输出其最小周期.  */ import java.util.*; public class 周期串 { public static void main(String[] args) { // TODO Auto-generated method stub Scann…
解题思路: 对一个字符串求其最小周期长度,那么,最小周期长度必定是字符串长度的约数,即最小周期长度必定能被字符串长度整除 其次,对于最小周期字符串,每位都能对应其后周期字串的每一位, 即 ABC  ABCABC (345678)->%其字串长度3 012  3%3 4%3 5%3  6%3 7%3  8%3   0      1     2        0      1       2 if(a[j]!=a[j%3])说明不对应,不是周期,进行下一位扫描. AC Code: #include<…
题意: 给一个字符串,寻找最短的循环节 如abcabcabcabc以3为周期,也按6和12为周期. 分析: 因为循环节肯定是相等的,所以枚举串长度的所有约数的循环节再判断是否相等即可. 我的方法是枚举每一个相邻的串,后来看了下题解,可以用%串长度的方式去比较后面的串和第一串,这样应该会比我快一倍. #include <iostream> #include <cstdlib> #include <cstring> #include <cstdio> using…
A character string is said to have period k if it can be formed by concatenating one or more repetitionsof another string of length k. For example, the string ”abcabcabcabc” has period 3, since it is formedby 4 repetitions of the string ”abc”. It als…