| Run ID | 作者 | 问题 | 语言 | 测评结果 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|
| 81287 | sh25_huangse | 整数去重 | C++ | 通过 | 0 MS | 260 KB | 902 | 2026-01-04 15:44:38 |
#include <iostream> #include <vector> using namespace std; int main() { int n; cin >> n; int arr[20005]; // n ≤ 20000 for (int i = 0; i < n; i++) { cin >> arr[i]; } // 标记数组:因为数字范围 10~5000,开一个大小 5001 的数组足够(索引 0~5000) bool visited[5005] = {false}; // 初始化为false vector<int> result; // 存放去重后的结果 for (int i = 0; i < n; i++) { int num = arr[i]; if (!visited[num]) { // 如果这个数第一次出现 result.push_back(num); visited[num] = true; } } // 输出结果 for (size_t i = 0; i < result.size(); i++) { cout << result[i]; if (i != result.size() - 1) { cout << " "; // 最后一个数后不输出空格 } } cout << endl; return 0; }