您的位置:首页 > 编程语言

搞个代码试试

2008-07-05 17:23 204 查看
#include <iostream>

using namespace std;

char b[1000005];

char next[1000005];

int lb;

void setnext()

{

int i, j;

next[1] = 0;

for (i = 1, j = 0; i <= lb;) {

if (j == 0 || b[i] == b[j]) {

i++;

j++;

next[i] = j;

} else {

j = next[j];

}

}

}

int main()

{

int i;

int d;

b[0] = 'a';

while (scanf("%s", b + 1) && b[1] != '.')

{

lb = strlen(b) - 1;

setnext();

d = lb - next[lb];

if (lb % d > 0)

{

printf("1/n");

continue;

}

else

printf("%d/n", lb / d);

}

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  include