问题描述
在1至2019中,有多少个数的数位中包含数字9?
注意,有的数中的数位中包含多个9,这个数只算一次。例如,1999这个数包含数字9,在计算只是算一个数。
答案提交 544
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写.多余的内容将无法得分。
思路:和之前的一篇文章相似的(特殊的数字四十),就是换了换数据,再写一遍是为了加强记忆,比如取位我还是有点不习惯呢…
public static void main(String[] args) {
int ans = 0;
for (int i = 1; i <= 2019; i++) {
int a = i / 1000; // 千位
int b = i % 1000 / 100; // 百位
int c = i % 1000 % 100 / 10; // 十位
int d = i % 1000 % 100 % 10; // 个位
if (a == 9 || b == 9 || c == 9 || d == 9) {
ans++;
}
}
System.out.println(ans);
}
public class Main {
public static void main(String[] args) {
int ans = 0;
for (int i = 1; i <= 2019; i++) {
String string = String.valueOf(i); // 强转string类型
if (string.contains("9")) { // 判断字符串是否包含9
ans++;
}
}
System.out.println(ans);
}
}