当前位置:   article > 正文

CCF-GESP计算机学会等级考试2024年3月四级C++T2做题_gespc++2级2024真题

gespc++2级2024真题

 解析:

详见代码:

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. long long a[1000005];
  4. int n;
  5. int main() {
  6. int m, ans = 0;
  7. cin >> n;
  8. m = n;
  9. int s = 1;
  10. for(int i = 1; i <= n; i++) {
  11. cin >> a[i];
  12. }
  13. sort(a + 1, a + n + 1);
  14. for(int j = 1; j <= m; j++) {
  15. for(int k = s; k <= n; k++) {
  16. if(j <= a[k]) {
  17. ans++;
  18. a[k] = j;
  19. s = k;
  20. break;
  21. }
  22. }
  23. }
  24. cout << ans;
  25. return 0;
  26. }

另一种解法:

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. long long a[1000005];
  4. int n;
  5. int main() {
  6. int m, ans = 0;
  7. cin >> n;
  8. for(int i = 1; i <= n; i++) {
  9. cin >> a[i];
  10. }
  11. sort(a + 1, a + n + 1);
  12. for(int i = 1, j = 1; i <= n; i++) {
  13. while(a[j] < i && j <= n) {
  14. j++;
  15. }
  16. if(j > n) break;
  17. ans++;
  18. j++;
  19. }
  20. cout << ans;
  21. return 0;
  22. }

 

 

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/397188
推荐阅读
相关标签
  

闽ICP备14008679号