题意: 给定两个整数 l 和 r ,对于所有满足1 ≤ l ≤ x ≤ r ≤ 10^9 的 x ,把 x 的所有约数全部写下来。对于每个写下来的数,只保留最高位的那个数码。求1~9每个数码出现的次数。 题解 最先想到的是枚举[L,R]区间内的每一个数,然后求和。考虑如何优化。我们发现只用写出最高位出现的次数所以下来就是来计算每个 对应的区间比如 那么最后决定答案的是什么?不就是 在范围的倍数的个数如然后呢就是如果每一个都要计算的话,那么时间复杂度为 ,这样接着超时(弥天大雾)举个例子 ,在 的符合的倍数的个数都为 个,所以就可以相当于111*9,然后就可以跳过一部分枚举区间时间复杂度: ...