蓝桥与力扣刷题(蓝桥 门牌制作)
题目:小蓝要为一条街的住户制作门牌号。
这条街一共有 2020 位住户,门牌号从 1 到 2020编号。
小蓝制作门牌的方法是先制作 0 到 9 这几个数字字符,最后根据需要将字符粘贴到门牌上,例如门牌 1017 需要依次粘贴字符 1、0、1、7,即需要 1 个字符 0,2 个字符 1,1 个字符 7。
请问要制作所有的 1 到 2020 号门牌,总共需要多少个字符 2?
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
解题思路+代码:
代码:
public class Main {
public static void main(String[] args) {
int count = 0; // 初始化计数器
// 遍历每个门牌号
for (int i = 1; i <= 2020; i++) {
String doorNumber = i + " "; // 将门牌号转换为字符串
for (int j = 0; j < doorNumber.length(); j++) {
if (doorNumber.charAt(j) == '2') {
count++; // 如果字符是'2',则计数器加1
}
}
}
// 输出字符'2'的总数量
System.out.println(count);
}
}
解题思路+代码:
代码:
public class Main {
public static void main(String[] args) {
int count = 0; // 初始化计数器
// 遍历每个门牌号
for (int i = 1; i <= 2020; i++) {
String doorNumber = String.valueOf(i); // 将门牌号转换为字符串
for (int j = 0; j < doorNumber.length(); j++) {
if (doorNumber.charAt(j) == '2') {
count++; // 如果字符是'2',则计数器加1
}
}
}
// 输出字符'2'的总数量
System.out.println(count);
}
}
总结:本题当中需要将数字转字符串,数字转字符串可以是String.valueOf(),也可以是+ " ",再用charAt转字符,遍历每一个数,只要是数中==2的都会被记录下来。最后输出字符‘2’的总数量即可。