楼主:
oin1104 (是oin的说)
2024-12-06 13:19:00最近都懒得发每日 堕落了
哀
题目:
在1~n的范围
不能选被ban的数字
选几个数字不能超过上限
最多能选几个
思路:
因为范围比较小
所以直接纪录哪些数字被n
接着从1~n加上去
不加被b的
这样能最多数字
超过上限之后break 回传
```cpp
class Solution {
public:
int maxCount(vector<int>& banned, int n, int maxSum)
{
vector<int> save(10001,0);
for(int k : banned)save[k] = 1;
int num = 0;
int oin = 0;
int i = 1;
for(; i <= n ; i ++)
{
if(save[i])continue;
oin += i;
if(oin > maxSum)break;
num ++;
}
// for(int i : paper)cout << i << " " ;
return num;
}
};
```