2549. 统计桌面上的不同数字
题目链接:2549. 统计桌面上的不同数字
代码如下:
class Solution {
public:
//参考:https://leetcode.cn/problems/count-distinct-numbers-on-board/solutions/2080589/shu-xue-o1-jie-by-endlesscheng-hucn
// int distinctIntegers(int n)
// {
// return max(n-1,1);
// }
int distinctIntegers(int n)
{
vector<int> nums(n+1);
nums[n]=1;//代表n在桌面上
for(int j=0;j<n;j++)
{
for(int x=1;x<=n;x++)
{
if(nums[x]==0) continue;
for(int i=1;i<=n;i++)
{
if(x%i==1)
nums[i]=1;
}
}
}
return accumulate(nums.begin(),nums.end(),0);
}
};