UVA - 455 Periodic Strings【字串】
阿新 • • 發佈:2018-11-11
Periodic Strings
題目大意:先輸入一個數字n,在輸入n行字串,對每一個字串輸出其最小的週期長度,每兩個輸出間有一空行。
AC程式碼:
#include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #include <cstdlib> #include <cstring> #include <map> #include <stack> #include <queue> #include <vector> #include <bitset> #include <set> #include <utility> #include <sstream> #include <iomanip> using namespace std; typedef long long ll; #define inf 0x3f3f3f3f #define rep(i,l,r) for(int i=l;i<=r;i++) #define lep(i,l,r) for(int i=l;i>=r;i--) #define ms(arr) memset(arr,0,sizeof(arr)) //priority_queue<int,vector<int> ,greater<int> >q; const int maxn = (int)1e5 + 5; const ll mod = 1e9+7; char str[100]; int main() { int n; while (scanf("%d",&n)!=EOF) { while (n--) { scanf("%s",str); int len=strlen(str); rep(i,1,len) { int t=0; if (len%i==0) { for (t=i;t<len;t++) if (str[t]!=str[t%i]) break; if (t==len) { printf("%d\n",i); break; } } } if(n) printf("\n"); } } return 0; }