坚持每天力扣每日一题(2)
题目
2719. 统计整数数目
第一次解法超时,但也学到了很多。
- 因为匿名内部类不能更改外部变量,所以引入了Atomic 原子类,之后再做知识笔记。
- String转Stream流,学以致用。
下面附第一次写的代码(代码超时)
class Solution {
public int count(String num1, String num2, int min_sum, int max_sum) {
int res = 0, i = Integer.parseInt(num2);
int flag = Integer.parseInt(num1);
while(flag <= i){
int x = digit_sum(flag);
if(min_sum <= x && x <= max_sum){
res = res % 1000000007;
res++;
}
flag++;
}
return res;
}
public static int digit_sum(int num){
//写此方法为了简洁,尝试使用Stream流
return String.valueOf(num).chars().map(Character::getNumericValue).sum();
}
}
之后,在题解中看到了灵神模板,数位DP,开始学习新的知识。