java算法:统计数字-将数字转换成字符串,然后使用字符串String.valueOf()方法进行判断

时间:2021-11-27 23:33:59

题目:

计算数字 k 在 0 到 n 中的出现的次数,k 可能是 0~9 的一个值。

样例
样例 1: 输入:
k = 1, n = 1
输出:
1
解释:
在 [0, 1] 中,我们发现 1 出现了 1 次 (1)。
样例 2: 输入:
k = 1, n = 12
输出:
4
解释:
在 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] 中,我们发现 1 出现了 4 次 (1, 10, 11, 12)。

 

代码实现:

        /**
* @南非波波
* 统计数字:计算数字 k 在 0 到 n 中的出现的次数,k 可能是 0~9 的一个值。
* 思路:将数字转换成字符串,然后使用字符串String.valueOf()方法进行判断
* */
public static void main(String[] args) {
in =new Scanner(System.in);
int k= in.nextInt();
String str_k=String.valueOf(k);
int n =in.nextInt();
if (k >= 0 && k<=9) {
int count=0;
HashSet set = new HashSet();
for (int i = 0; i <= n; i++) {
String str=String.valueOf(i);
if (str.indexOf(str_k) != -1) {
set.add(i);
count ++;
}
}
System.out.println("count:"+count+",set:" +set);
} }