题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
小蓝要为一条街的住户制作门牌号。
这条街一共有 20202020 位住户,门牌号从 11 到 20202020 编号。
小蓝制作门牌的方法是先制作 00 到 99 这几个数字字符,最后根据需要将字符粘贴到门牌上,例如门牌 1017 需要依次粘贴字符 1、0、1、71、0、1、7,即需要 11 个字符 00,22 个字符 11,11 个字符 77。
请问要制作所有的 11 到 20202020 号门牌,总共需要多少个字符 22?
运行限制
- 最大运行时间:1s
- 最大运行内存: 128M
代码如下:
#include <iostream> using namespace std; int main() { int two = 0; for (int i = 1; i <= 2020; i++) { if (i >= 1 && i <= 9) { //个位级 if (i == 2) two++; } if (i >= 10 && i <= 99) { //十位级 if (i % 10 == 2) two++; if (i / 10 == 2) two++; } if (i >= 100 && i < +999) { //百位级 if (i % 10 == 2) two++; if (i / 10 % 10 == 2) two++; if (i / 100 == 2) two++; } if (i >= 1000) { //千位级 if (i % 10 == 2) two++; if (i / 10 % 10 == 2) two++; if (i / 100 % 10 == 2) two++; if (i / 1000 == 2) two++; } } cout << two; }