题解 | 明明的随机数
明明的随机数
https://www.nowcoder.com/practice/3245215fffb84b7b81285493eae92ff0
使用数组去重 #include <bits/stdc++.h> using namespace std; const int N = 1e3 + 10; array<bool, N> a; int main() { int n, m; while(scanf("%d", &n) != -1){ while(n -- ){ scanf("%d", &m); a[m] = true; } } for(int i = 0; i < N; i ++ ){ if(a[i]) printf("%d\n", i); } return 0; } // 64 位输出请用 printf("%lld") 常规解法使用hash set 去重 #include <bits/stdc++.h> using namespace std; vector<int> a; unordered_set<int> s; int main() { int n; scanf("%d", &n); for(int i = 0; i < n; i ++ ){ int t; scanf("%d", &t); if(!s.count(t)){ a.push_back(t); } s.insert(t); } sort(a.begin(), a.end()); for(const auto &i : a){ printf("%d\n", i); } return 0; }