国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

藍(lán)橋杯 算法提高 周期字串

2019-11-08 01:46:49
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

問(wèn)題描述   右右喜歡聽(tīng)故事,但是右右的媽媽總是講一些“從前有座山,山里有座廟,廟里有個(gè)老和尚給小和尚講故事,講的什么呢?從前有座山……”這樣循環(huán)的故事來(lái)搪塞右右。   我們定義,如果一個(gè)字符串是以一個(gè)或者一個(gè)以上的長(zhǎng)度為k的重復(fù)字符串所連接成的,那么這個(gè)字符串就叫做周期為k的串。   例如:   字符串’abcabcabcabc’周期為3,因?yàn)樗怯?個(gè)循環(huán)’abc’組成的。它同樣是以6為周期(兩個(gè)重復(fù)的’abcabc’)和以12為周期(一個(gè)循環(huán)’abcabcabcabc’)。   右右現(xiàn)在想給他的朋友大灰狼轉(zhuǎn)述媽媽講的故事,請(qǐng)幫他寫(xiě)一個(gè)程序,可以測(cè)定一個(gè)字符串的最小周期。 輸入格式   一個(gè)最大長(zhǎng)度為100的無(wú)空格的字符串。 輸出格式   一個(gè)整數(shù),表示輸入的字符串的最小周期。 樣例輸入 HaHaHa 樣例輸出 2 樣例輸入 Return0 樣例輸出 7

import java.util.Scanner;public class Main{ public static void main(String args[]){ Scanner in=new Scanner(System.in); String s=in.nextLine(); min_Cycle(s); } public static void min_Cycle(String s){ String demo=""; int cycle=0; for(int i=1;i<=s.length() ;i++){ if(s.length()%i==0){ demo=s.substring(0, i); if(cmp(s,demo)){ cycle=demo.length(); break; }else { cycle=s.length(); } } } System.out.PRintln(cycle); } public static boolean cmp(String s,String demo){ int demo_L=demo.length(); boolean flag=true; for(int i=0;i<s.length()-1;i+=demo_L){ if(!demo.equals(s.substring(i, i+demo_L))){ flag=false; } } return flag; }} /*這道題花了我這個(gè)小白好長(zhǎng)時(shí)間了,期間少寫(xiě)了break語(yǔ)句,就扣了10分,還有min_Cycle函數(shù)里的for循環(huán)的判斷條件寫(xiě)成了i<s.length();也扣了10分,以后還得多注意,多思考。*/
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 邹城市| 宁化县| 石嘴山市| 二连浩特市| 曲周县| 余庆县| 称多县| 弥勒县| 临西县| 青阳县| 平南县| 渝北区| 龙岩市| 永安市| 台南县| 张掖市| 启东市| 伊金霍洛旗| 惠安县| 麟游县| 临湘市| 收藏| 兴山县| 甘孜| 沛县| 六安市| 九龙县| 洛川县| 佛山市| 商城县| 栾城县| 微博| 五莲县| 黑河市| 明水县| 九江县| 岑巩县| 龙海市| 三明市| 靖州| 珲春市|