1. 题意
给你一个正整数 n ,开始时,它放在桌面上。在 1 0 9 10^9 109天内,每天都要执行下述步骤:
对于出现在桌面上的每个数字 x ,找出符合 1 <= i <= n 且满足 x % i == 1 的所有数字 i 。
然后,将这些数字放在桌面上。
返回在
1
0
9
10^9
109 天之后,出现在桌面上的 不同 整数的数目。
2. 题解
对于任一自然数一定有 m m o d ( m − 1 ) = 1 m\mod(m-1)=1 mmod(m−1)=1,一直重复这个过程到 m = 1 m=1 m=1。
所以对于非 1 1 1整数,留下的数字为 m − 1 m-1 m−1。
对数字 1 1 1来说,则只有它本身。
class Solution {
public:
int distinctIntegers(int n) {
return n == 1 ? 1 : n - 1;
}
};