把前n(n<=10000)个整数顺次写在一起,123456789101112……,数一数0~9各出现多少次(输出10个整数,分别是0,1,2,……,9出现的次数)。
例如输入15,则数组为"123456789101112131415"
输入:
3
输出:
0 1 1 1 0 0 0 0 0 0
import java.util.Scanner;
public class Ma {
public static void main(String[] args) {
int a = 0, b = 0, c = 0, d = 0, e = 0, f = 0, g = 0, h = 0, j = 0, k = 0;
String str = "";
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
//1-n的数
for (int i = 1; i <= num; i++) {
str += i;
}
//统计
for (int i = 0; i < str.length(); i++) {
switch (str.charAt(i)) {
case '0':
k++;
break;
case '1':
a++;
break;
case '2':
b++;
break;
case '3':
c++;
break;
case '4':
d++;
break;
case '5':
e++;
break;
case '6':
f++;
break;
case '7':
g++;
break;
case '8':
h++;
break;
case '9':
j++;
break;
default:
break;
}
}
System.out.printf("%d%d%d%d%d%d%d%d%d%d", k, a, b, c, d, e, f, g, h, j);
}
}