第十届蓝桥杯java B组—试题B 不同子串
生活随笔
收集整理的這篇文章主要介紹了
第十届蓝桥杯java B组—试题B 不同子串
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
文章目錄
- 1.大賽題目
- 2.文字描述如下
- 3.代碼實(shí)例
1.大賽題目
1.圖片如下:
2.文字描述如下
試題 B: 不同子串
【問題描述】
一個(gè)字符串的非空子串是指字符串中長度至少為 1 的連續(xù)的一段字符組成 的串。
例如,字符串a(chǎn)aab 有非空子串a(chǎn), b, aa, ab, aaa, aab, aaab,一共 7 個(gè)。 注意在計(jì)算時(shí),只算本質(zhì)不同的串的個(gè)數(shù)。
請(qǐng)問,字符串0100110001010001 有多少個(gè)不同的非空子串?
【答案提交】
這是一道結(jié)果填空的題,你只需要算出結(jié)果后提交即可。
本題的結(jié)果為一 個(gè)整數(shù),在提交答案時(shí)只填寫這個(gè)整數(shù),填寫多余的內(nèi)容將無法得分。
3.代碼實(shí)例
public class lanqiao10_2 {public static void main(String args[]) {String str2 = "0100110001010001"; Set<String> set = new HashSet<>();//將每一個(gè)字符串添加到集合set中for (int i = 0; i < str2.length(); i++) {for (int j = i; j < str2.length(); j++) {set.add(str2.substring(i, j+1));}}System.out.println(set.size());} }因?yàn)镾et集合可以去除重復(fù)元素,所以將遍歷的所有可能放到Set集合中
答案:100
總結(jié)
以上是生活随笔為你收集整理的第十届蓝桥杯java B组—试题B 不同子串的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java for 循环中++i和i++的
- 下一篇: 第十届蓝桥杯java B组—试题C 数列