酷代码 AI
菜单
服务商

C++ 编程:精准统计宝藏箱数量,应对陆凯船长搬运难题

以下是使用 C++ 编写的程序,用于解决该问题: ```cpp #include <iostream> using namespace std; int main() { int n; cin >> n; // 输入箱子的数量 int weights[10]; for (int i = 0; i < n; i++) { cin >> weights[i]; // 输入每个箱子的重量 } int x; cin >> x; // 输入陆凯船长能搬动的最大重量 int equalCount = 0; // 重量刚好和 x 相等的箱子的数量 int lessCount = 0; // 重量小于 x 的箱子的数量 for (int i = 0; i < n; i++) { if (weights[i] == x) { equalCount++; } else if (weights[i] < x) { lessCount++; } } cout << equalCount << " " << lessCount << endl; return 0; } ``` 代码解释: 1. 输入箱子数量:使用 `cin` 读取一个整数 `n`,表示箱子的数量。 2. 输入每个箱子的重量:使用一个数组 `weights` 来存储每个箱子的重量,通过循环读取 `n` 个整数。 3. 输入最大重量:使用 `cin` 读取一个整数 `x`,表示陆凯船长能搬动的最大重量。 4. 统计数量:使用两个变量 `equalCount` 和 `lessCount` 分别统计重量刚好和 `x` 相等的箱子的数量,以及重量小于 `x` 的箱子的数量。通过遍历数组 `weights`,根据箱子的重量与 `x` 的关系更新相应的计数器。 5. 输出结果:使用 `cout` 输出两个计数器的值,中间用空格隔开。 复杂度分析: - 时间复杂度:$O(n)$,其中 $n$ 是箱子的数量。需要遍历数组一次。 - 空间复杂度:$O(n)$,主要用于存储每个箱子的重量。 ######[AI问答 | 483点数解答 | 2025-11-08 19:06:44]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]