zoukankan      html  css  js  c++  java
  • c语言 周期

    //问题:如果一个字符串可以由某个长度为k的字符串重复多次得到,则称该串的周期为k.例如,abcabcabc 以3为周期(同时它也以6为周期)
    //输入一个长度不超过80的字符串,输出其最小的周期
    #include<stdio.h>
    #include<string.h>
    const int maxn=100;
    char s[maxn];
    int main(){
        int T;
        scanf("%d",&T);
        while(T--){
            scanf("%s",s);
            for(int i=1;i<=strlen(s);i++){
                int n=0,falg=0;
                //如果是周期 必须能被整除
                if(strlen(s)%i==0){
                    for(int j=0;j<strlen(s);j++){
                        //每个周期内的值
                        if(s[j]==s[j%i]){
                            n++;
                            //当n等于strlen(s)时 就是结束
                            if(n==strlen(s)){
                                printf("%d",i);
                                //结束循环的标记
                                falg=1;
                                break;
                            }
                        }
                    }
                }
                if(falg)
                    break;
            }
            if(T)
                printf(" ");
            else
                printf(" ");
        }
        return 0;
    }

  • 相关阅读:
    firefox禁止更新提示
    laravel性能优化笔记片段
    laravel 7 在线教育项目实操笔记(2)后台基础功能开发
    一、笔记片段 迁移文件相关(创建表 字段 添加假数据等)
    路由、控制器笔记
    laravel rbac笔记片段
    二 笔记片段
    三 文件上传片段
    分享5个有趣的 JavaScript 代码片段
    异步上传文件
  • 原文地址:https://www.cnblogs.com/qingtianBKY/p/6600244.html
Copyright © 2011-2022 走看看