变强了,也秃了 2022-08-24 11:59 采纳率: 66.7%
浏览 9
已结题

OJ1005——周期串

题目描述
如果一个字符串可以由某个长度为k的字符串重复多次得到,我们说该串以k为周期。例如abcabc以3为周期(当然他也以6,12为周期)。输入一个长度不超过80的串,输出他的最小周期。
输入
多组测试数据,每组仅一行为一个仅有大写字母组成的字符串。
输出
对于每组数据输出该字符串的最小周期。
样例输入 Copy
HOHO
样例输出 Copy
2

以下是我的代码,最终判错错误率83%,请众神们指点问题出在哪里啦

#include<iostream>
#include<bits/stdc++.h>
using namespace std;
int main()
{
    char s[80];
    while (cin >> s)
    {
        int len = strlen(s);
        bool f1 = false;
        for (int k = 0;k<len; k++)
        {
            if (s[k] < 'A' || s[k]>'Z')
            {
                f1 = true;
                break;
            }
        }
        if (f1)
            continue;
        for (int i = 1; i <= len; i++)
        {
            bool f2 = true;
            for(int j=i;j<len;j++)
                if (s[j] != s[j % i])
                {
                    f2 = false;
                    break;
                }
            if (f2)
            {
                cout << i << endl;
                break;
            }
        }
    }

    return 0;
}
  • 写回答

2条回答 默认 最新

  • 变强了,也秃了 2022-08-24 13:24
    关注

    问题已解决,缺少一个判断条件:字符串长度要能整除周期

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月1日
  • 已采纳回答 8月24日
  • 创建了问题 8月24日

悬赏问题

  • ¥15 yolov8边框坐标
  • ¥15 matlab中使用gurobi时报错
  • ¥15 WPF 大屏看板表格背景图片设置
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真