c语言现代诗如蚯蚓思路,[蓝桥杯][算法提高VIP]现代诗如蚯蚓 (Java代码)

该博客主要探讨了一种字符串比较的方法,通过不断比较子串来寻找最短重复子串。算法首先从长度为1的子串开始,逐步增加长度,直到找到最长重复子串。这个过程涉及到字符串的切分和比较,对于理解字符串处理和算法优化具有一定的参考价值。
摘要由CSDN通过智能技术生成

解题思路:

举个例子abc abc abc abc,第一次拿a和b比较,不行就拿ab和ca比交,不行就拿abc和abc比较,再拿abc和下一个abc比较,最后统计最短的字符串,用length除以它就得出答案

注意事项:

参考代码:import java.util.Scanner;

public class 蚯蚓 {

public static void main(String[] args) {

Scanner in=new Scanner(System.in);

String s=in.next();int length=s.length();

int min=10000;

if(length==0)return;

for(int i=1;i

int k=i;

while(k+i<=length){

if(!(s.substring(0, i)).equals(s.substring(k,k+i)))

break;

else if(k+i==length){

if(i

}

k+=i;

}

}

if(min==10000)min=length;

System.out.println(length/min);

}v

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值