酷代码 AI
菜单
服务商

c++小队收集到了n个能量宝石,准备制造能量光剑。一个宝石只能制造一把光剑,所以他们要优先利用宝石的能量制造2级光剑,然后再制造1级光剑。请你编写一个程序,输入宝石的数量和每个宝石的能量值,输出所有能量光剑的制造结果。如果能量值大于100,表示制造2级能量光剑,输出2;如果能量值在51到100之间,表示制造1级能量光剑,输出1;如果能量值小于等于50,表示能量不足无法制造光剑,输出no。

以下是实现该功能的 C++ 代码: ```cpp #include <iostream> using namespace std; int main() { int n; // 输入宝石的数量 cin >> n; for (int i = 0; i < n; i++) { int energy; // 输入每个宝石的能量值 cin >> energy; if (energy > 100) { // 能量值大于 100,制造 2 级能量光剑 cout << 2 << endl; } else if (energy > 50 && energy <= 100) { // 能量值在 51 到 100 之间,制造 1 级能量光剑 cout << 1 << endl; } else { // 能量值小于等于 50,能量不足无法制造光剑 cout << "no" << endl; } } return 0; } ``` 代码说明: 1. 输入宝石数量:使用 `cin` 读取用户输入的宝石数量 `n`。 2. 循环处理每个宝石:使用 `for` 循环遍历 `n` 个宝石,对于每个宝石,读取其能量值。 3. 判断能量值并输出结果: - 如果能量值大于 100,输出 `2`,表示制造 2 级能量光剑。 - 如果能量值在 51 到 100 之间,输出 `1`,表示制造 1 级能量光剑。 - 如果能量值小于等于 50,输出 `no`,表示能量不足无法制造光剑。 复杂度分析: - 时间复杂度:$O(n)$,其中 $n$ 是宝石的数量。因为需要遍历每个宝石一次。 - 空间复杂度:$O(1)$,只使用了常数级的额外空间。 [2025-12-26 19:09:31 | AI问答 | 450点数解答]

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