最小周期可以用%枚举
#include <iostream> #include <string> #include <cstring> #include <cstdlib> #include <cstdio> #include <cmath> #include <algorithm> #include <stack> #include <cctype> using namespace std; #define mem(a,b) memset(a,b,sizeof(a)) #define pf printf #define sf scanf #define spf sprintf #define debug printf("! ") #define INF 10000 #define MAXN 5010 #define MAX(a,b) a>b?a:b #define blank pf(" ") #define LL long long int main() { char str[100]; sf("%s",str); int n = strlen(str); int k,i; for(i=1;i<n;i++) { for(k=i;k<n;k++) { if(str[k]!=str[k%i]) break; } if(k==n) { pf("%d ",i); break; } } }