Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string.h>
- #include <math.h>
- using namespace std;
- char msg[100010];
- int len;
- int Repeat(int n){
- for(int i = 0; i < len - n; i += n){
- for(int j = 0; j < n; ++j){
- if(msg[i + j] != msg[i + n + j]){
- return 0;
- }
- }
- }
- return 1;
- }
- int main(){
- int cnt;
- for(int k = 1; k <= 5; ++k){
- scanf(" %s", msg);
- len = strlen(msg);
- double mx = sqrt(len);
- cnt = 0;
- for(int i = 1; i <= mx; ++i){
- if(len % i == 0){
- if(i != len / i){
- cnt += Repeat(i) + Repeat(len / i);
- } else {
- cnt += Repeat(i);
- }
- }
- }
- cout << cnt << "\n";
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement