题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
小蓝特别喜欢 2,今年是公元 2020 年,他特别高兴。 他很好奇,在公元 1 年到公元 2020 年(包含)中,有多少个年份的数位中包含数字 2 ?
运行限制
- 最大运行时间:1s
- 最大运行内存: 128M
解题思路:
这是一道国赛题目,位置是第一道题,难度属于最简单类别。接下来简要介绍一下解题思路。
由于这道题的位置是填空题,故可以通过暴力枚举直接得到答案即可。从 1 到 2020 进行遍历,对每一位数字都转化为 String 类型,每一轮遍历都进行 contain 判断,若当前字符串中包含字符 2 则将总数 count 进行 + 1,否则接着遍历下一位数字即可,最后当遍历结束后输出 count 即答案。该算法的 Java 代码实现如下:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int count = 0;
for (int i = 1; i <= 2020; i++) {
if (String.valueOf(i).contains("2")) {
count++;
}
}
System.out.println(count);
}
}