统计桌面上的不同数字OJ链接:2549. 统计桌面上的不同数字 - 力扣(LeetCode)
题目:
思路:
这是一个很简单的数学问题:
当n = 5时,因为n % 4 = 1,所以下一天4一定会被放上桌面
当n = 4时,因为n % 3 = 1,所以下一天3一定会被放上桌面
当n = 3时,因为n % 2 = 1,所以下一天2一定会被放上桌面
...
当n = 随机值时,n % (n - 1) = 1,所以下一天n - 1会被放上桌面
因为1 <= n <= 100,所以十亿天后2 ~ n - 1都会被放在桌面上,即桌面上最终有n - 1个数字。
特殊情况:当n == 1时,结果为1。
代码实现:
int distinctIntegers(int n)
{
if(n==1)
{
return 1;
}
else
{
return n-1;
}
}
运行结果: