题解
2025-05-25 14:22:56
发布于:浙江
6阅读
0回复
0点赞
思路:本题可以使用贪心算法。将题意转化后即可得出:我们先将他升序排列,之后如果遇到小于k的(也可以说是与上一天的题库数量相等)就跳过一次。否则就将n加一。之后输出既可:
#include <bits/stdc++.h>
using namespace std;
int main(){
int a;
cin >> a;
int sz[1000005]={};
for(int i=1;i<=a;i++)cin >> sz[i];
sort(sz+1,sz+a+1);
int n=0;
for(int i=1;i<=a;i++){
if(sz[i]<i)continue;
n++;
}cout << n;
return 0;
}
时间复杂度:
这里空空如也
有帮助,赞一个