切换风格

默认晚霞 雪山 粉色心情 伦敦 花卉 绿野仙踪 加州 白云 星空 薰衣草 城市 简约黑色 简约米色 龙珠
回复 0
     紫钻仅向指定用户开放  

394

主题

411

帖子

5万

积分

管理员

论坛BOSS

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

积分
52007

最佳新人活跃会员热心会员推广达人宣传达人灌水之王突出贡献优秀版主荣誉管理论坛元老

JAVA蓝桥杯算法提高 周期字串[复制链接]
发表于 2018-11-11 20:06:11 | 显示全部楼层 |阅读模式

目前是游客浏览,请注册

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
问题描述
  右右喜欢听故事,但是右右的妈妈总是讲一些“从前有座山,山里有座庙,庙里有个老和尚给小和尚讲故事,讲的什么呢?从前有座山……”这样循环的故事来搪塞右右。
  我们定义,如果一个字符串是以一个或者一个以上的长度为k的重复字符串所连接成的,那么这个字符串就叫做周期为k的串。
  例如:
  字符串’abcabcabcabc’周期为3,因为它是由4个循环’abc’组成的。它同样是以6为周期(两个重复的’abcabc’)和以12为周期(一个循环’abcabcabcabc’)。
  右右现在想给他的朋友大灰狼转述妈妈讲的故事,请帮他写一个程序,可以测定一个字符串的最小周期。

输入格式
  一个最大长度为100的无空格的字符串。
输出格式
  一个整数,表示输入的字符串的最小周期。
样例输入
HaHaHa
样例输出
2
样例输入
Return0
样例输出
         7

[Java] 纯文本查看 复制代码
import java.util.Scanner;

public class Main {

        public static void main(String[] args) {
                Scanner scan=new Scanner(System.in);
                String str=scan.next();
                for (int i = 1; i <str.length(); i++) {
                        if (str.length()%i!=0) {
                                continue;
                        }
                        String str1=str.substring(0,i);
                        boolean b=true;
                        
                        for (int j = i; j <=str.length()-i; j+=i) {
                                try {
                                        if (!str1.equals(str.substring(j,j+i))) {
                                                b=false;
                                                break;
                                        }
                                } catch (Exception e) {
                                        b=false;
                                        break;
                                }
                                
                        }
                        if (b) {
                                System.out.println(i);
                                return;
                        }
                }
                System.out.println(str.length());
        }
}

JAVA蓝桥杯算法提高 周期字串

JAVA蓝桥杯算法提高 周期字串







上一篇:图片添加图片水印和文字水印

打赏列表

~~~还没有人打赏~~~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|五秒论坛 ( 鄂ICP备18019426号 )|申请友情链接

返回顶部