即如1~100 中有多少个 2的因子?
有些数字是1个该因子。有些数字有2个 有些数字有3个。
这就好比产生了重叠。
那么该怎么数呢?
1 1 1
1 2 2 1 1 2 -> 1 1 1 1 1 1 把2认为是2个1层叠在一起。然后你可以先数掉第一层。 就剩下 1 1 1 然后再数这一层即可。
也就是说先解决 1~100 中有多少个 能被2整除的数。再解决 1~100 种有多少个能被2^4整除的数。。。。这些数之和就是2的因子的个数。
那么就是解决一个问题。 1~100种有多少个能被某个数 整除的数。
逆向思维。看看有什么数能被2给整除
2*1 2*2 2*3 2*4 2*5 2*6.....
你会发现也就是 n*m<=100 m的值就是了。也就是说m = [100/n]. [] 是取整的意思。
所以该问题也就引刃而解了。
思考:
ex: 所有小于 100 的正整数中 有因子2 或3 的数的个数 ?
ex: 分母是1001的最简分数一共有多少个? (提示:1001=7×11×13)