酷代码 AI
菜单
服务商

给出n个整数,要求删除里面所有为x的数 输入 第一行,两个整数:n x(n<=1000) 第二行,n个整数,中间用空格隔开 输出 一行:删除操作完成了的数列(c++)

以下是一个用 C++ 编写的程序,用于删除给定整数序列中所有值为 `x` 的数: ```cpp #include <iostream> #include <vector> int main() { int n, x; // 读取 n 和 x std::cin >> n >> x; std::vector<int> numbers; int num; // 读取 n 个整数 for (int i = 0; i < n; ++i) { std::cin >> num; // 如果当前数不等于 x,则添加到向量中 if (num != x) { numbers.push_back(num); } } // 输出删除操作完成后的数列 for (int i = 0; i < numbers.size(); ++i) { if (i > 0) { std::cout << " "; } std::cout << numbers[i]; } std::cout << std::endl; return 0; } ``` 代码解释: 1. 输入读取:首先读取两个整数 `n` 和 `x`,其中 `n` 表示整数序列的长度,`x` 表示要删除的数。 2. 遍历输入的整数序列:使用 `for` 循环读取 `n` 个整数,对于每个读取的整数,如果它不等于 `x`,则将其添加到 `std::vector<int>` 类型的 `numbers` 向量中。 3. 输出结果:遍历 `numbers` 向量,将其中的元素输出,元素之间用空格分隔。 复杂度分析: - 时间复杂度:$O(n)$,其中 $n$ 是输入整数序列的长度。 - 空间复杂度:$O(m)$,其中 $m$ 是删除 `x` 后剩余元素的数量。 [2026-02-06 16:05:06 | AI问答 | 426点数解答]

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