腾讯面试题: 1-1000 之间有多少个 7 ?

说明 不要理解为多少个数包含7; 思路 以题目理解为 [0, 999] 有多少个7, 因为0和1000都不含有7; [1, 999] 或 [1, 9999] 的思路是一样的; 假如 n 是数字的位数, 则有 f(n) = f(n-1) * 9 + 10^(n-1): f(n-1)*9: 因为高位有[1, 9]共计9种数字搭配地位; 10^(n-1): 高位的7搭配地位的所有可能数字可能;

Read More