本文主要是介绍题目 1816: 重复模式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目描述:
作为 drd 的好朋友,技术男 atm 在 drd 生日时送给他一个超长字符串 S 。atm 要 drd 在其中找出一个最长的字符串 T ,使得 T 在 S 中至少出现了两次,而他想说的秘密就藏在 T 中。
由于字符串实在是太长了,drd 总是找不到合适的 T 。于是 drd 请你帮他找到这个 T 的长度。
代码:
package lanqiao;import java.math.BigInteger;
import java.util.*;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String s = sc.next();for(int i = s.length() - 1;i >= 0;i --){String ch = s.substring(0,i);for(int j = 1;i + j <= s.length();j ++){String temp = s.substring(j,i + j);if(temp.equals(ch)){System.out.println(temp.length());return;}}}}
}
这篇关于题目 1816: 重复模式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!