获取题库不需要订阅专栏,可直接私信我进入CSDN领军人物top1博主的华为OD交流圈观看完整题库、最新面试实况、考试报告等内容以及大佬一对一答疑。
题目描述
给定一个字符串,只包含大写字母,求在包含同一字母的子串中,长度第 k 长的子串的长度,相同字母只取最长的那个子串。
输入描述
第一行有一个子串(1<长度<=100),只包含大写字母。
第二行为 k的值
输出描述
输出连续出现次数第k多的字母的次数。
题目解析
题目要求我们找出给定字符串中,具有相同字母的子串中长度排名为第k长的子串的长度。这里需要注意的是,如果存在多个相同长度的子串,我们只关注最长的那个子串的长度。例如,字符串"ABBBCC"中,如果k=2,我们要找的是长度第二长的连续相同字母子串,即第一个’B’的子串,长度为1。
Java算法源码
import java.util.Scanner;