题目描述
给你一个正整数 n
,开始时,它放在桌面上。在 天内,每天都要执行下述步骤:
- 对于出现在桌面上的每个数字
x
,找出符合1 <= i <= n
且满足x % i == 1
的所有数字i
。 - 然后,将这些数字放在桌面上。
返回在 天之后,出现在桌面上的 不同 整数的数目。
注意:
- 一旦数字放在桌面上,则会一直保留直到结束。
%
表示取余运算。例如,14 % 3
等于2
。
思路
感觉是对 做因式分解,但是仔细想想,在对 操作后一定会对 操作,依此类推直到 1,那么小于 的所有数最后都会出现在桌面上(当 时),那么最终代码就很简单了: