以下是用C++编写的代码来解决这个问题:

#include <iostream>
#include <vector>
#include <algorithm>

int main() {
    int N, K;
    std::cin >> N >> K;

    std::vector<int> numbers(N);
    for (int i = 0; i < N; i++) {
        std::cin >> numbers[i];
    }

    std::sort(numbers.begin(), numbers.end(), std::greater<int>());

    std::cout << numbers[K - 1] << std::endl;

    return 0;
}

解释:

  1. 首先读取输入的N和K。
  2. 创建一个大小为N的vector来存储每个小朋友写的数。
  3. 使用循环读取每个小朋友写的数,并将其存储在vector中。
  4. 使用std::sort函数对vector进行降序排序。
  5. 输出第K大的数,即vector中的第K-1个元素。

希望这可以帮助到你

希望能用c++编写代码描述N个小朋友在一起做游戏。 每个小朋友在自己的硬纸板上写一个数然后同时举起来。 接着小y老师提一个问题看哪个小朋友先抢答出来。 问题是:在这N个数中第K大的是哪个数?请你编程完成。输入描述输入文件的第一行为2个整数依次为N和K K = N = 10000 。 下面N行每行为一个整数表示从第1个小朋友到第N个朋友分别写的数。假设这些小朋友只知道-32768~32767之间的数

原文地址: https://www.cveoy.top/t/topic/iLd8 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录