C++ 编程试题库删除指定难度试题
C++ 编程试题库删除指定难度试题
题目描述
题库中有 n 道编程试题,根据题号给定 n 道试题的难易程度(均为 1-10 之间的正整数),删除难度为 x 的试题。
输入描述
第一行包含两个正整数 n 和 x ,之间用一个空格隔开。
第二行包含 n 个正整数,之间用一个空格隔开,表示每道试题的难度。
输出描述
一行包含若干正整数,每个整数后都有一个空格,表示删除难度为 x 的试题后题库中的试题情况。
用例输入 1
6 1
1 10 3 1 7 2
用例输出 1
10 3 7 2
解题思路
题目要求删除难度为 x 的试题,即删除试题数组中等于 x 的元素。可以使用一个新的数组来存储删除后的试题。
具体的解题思路如下:
- 读取输入的 n 和 x。
- 读取输入的 n 个试题难度,存储到一个数组中。
- 创建一个新的数组 result,用来存储删除难度为 x 的试题后的试题数组。
- 遍历原始试题数组,如果试题难度不等于 x,则将其添加到 result 数组中。
- 输出 result 数组中的元素。
代码实现
#include <iostream>
#include <vector>
int main() {
int n, x;
std::cin >> n >> x;
std::vector<int> questions(n);
for (int i = 0; i < n; i++) {
std::cin >> questions[i];
}
std::vector<int> result;
for (int i = 0; i < n; i++) {
if (questions[i] != x) {
result.push_back(questions[i]);
}
}
for (int i = 0; i < result.size(); i++) {
std::cout << result[i] << " ";
}
return 0;
}
输入样例解释
输入的 n 为 6,x 为 1,表示有 6 道试题,要删除难度为 1 的试题。
输出样例解释
输出为 10 3 7 2,表示删除难度为 1 的试题后的试题数组为 10、3、7、2。
原文地址: https://www.cveoy.top/t/topic/qmlz 著作权归作者所有。请勿转载和采集!