《B3959 [GESP202403 四级] 做题》
·
题目背景
对应的选择、判断题:试题 - GESP 202403 C++ 四级 - 洛谷有题
题目描述
小杨同学为了提高自己的实力制定了做题计划,在第 k 天时,他必须要完成 k 道题,否则他就会偷懒。
小杨同学现在找到了一个题库,一共有 n 套题单,每一套题单中有一定数量的题目。但是他十分挑剔,每套题单他只会使用一次,每一天也只能使用一套题单里的题目,之后那套题单就会弃之不用。对于每套题单,他不必完成题单内所有的题。
那么问题来了,小杨同学最多做题几天才偷懒呢?
输入格式
第一行,一个整数为 n,表示有多少套题单。
第二行 n 个整数 a1,a2,…an,分别表示每套题单有多少道题。
输出格式
输出一行一个整数表示答案。
输入输出样例
输入 #1复制
4 3 1 4 1
输出 #1复制
3
说明/提示
数据规模与约定
对全部的测试数据,保证 1≤n≤106,1≤ai≤109。
代码实现:
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
int n;
cin >> n;
vector<int> a(n);
for (int i = 0; i < n; ++i) {
cin >> a[i];
}
sort(a.begin(), a.end());
int ans = 0;
for (int i = 0; i < n; ++i) {
if (a[i] >= ans + 1) {
ans++;
}
}
cout << ans << endl;
return 0;
}
更多推荐

所有评论(0)