酷代码 AI
菜单
服务商

c++K博士想在自己的学生中选出一位学生做自己的代表。K博士一共有10位学生,分别从1到10一一编号,采用投票的方式进行选举,每个学生只能够投一次。得票最高的学生就将成为K博士的代表。 输入: 输入包括一行。 第一行包含十个整数,每个整数代表这位学生投给了谁。 输出: 输出包括一行,包含10个整数,分别为编号1~10的学生获得的票数,每个整数之间用空格隔开。 输入样例: 1 4 1 4 2 1 3 5 6 2 输出样例: 3 2 1 2 1 1 0 0 0 0 时间/内存: 1000MS/100MB

以下是解决该问题的 C++ 代码: ```cpp #include <iostream> using namespace std; int main() { // 用于存储每个学生的得票数,初始化为 0 int votes[10] = {0}; // 循环读取 10 个投票信息 for (int i = 0; i < 10; ++i) { int vote; cin >> vote; // 因为数组下标从 0 开始,所以要将学生编号减 1 votes[vote - 1]++; } // 输出每个学生的得票数 for (int i = 0; i < 10; ++i) { if (i > 0) { cout << " "; } cout << votes[i]; } cout << endl; return 0; } ``` 代码解释: 1. 初始化票数数组:创建一个长度为 10 的整数数组 `votes`,并将所有元素初始化为 0,用于存储每个学生的得票数。 2. 读取投票信息:使用 `for` 循环读取 10 个投票信息,每次读取一个投票,将对应学生的得票数加 1。注意,数组下标从 0 开始,所以要将学生编号减 1。 3. 输出得票数:使用 `for` 循环遍历 `votes` 数组,输出每个学生的得票数,每个整数之间用空格隔开。 复杂度分析: - 时间复杂度:$O(10)$,因为只需要遍历一次输入的投票信息和一次票数数组。 - 空间复杂度:$O(10)$,只需要使用一个长度为 10 的数组来存储得票数。 [2026-02-07 19:14:06 | AI问答 | 416点数解答]

相关提问
发财导航,免费问AI
实用工具查看更多