728x90
반응형
https://www.acmicpc.net/problem/10867
오늘 문제는 정렬 알고리즘을 이용한 풀이입니다.
사실 for문을 돌면서 중복 체크를 해도 되지만... C++의 강력한 STL을 적재적소 해야겠죠?
set을 이용해 중복을 방지하며 기본적으로 오름차순으로 정렬 받습니다!
(만약 오름차순을 명시하고 싶다면 set<int, greater<int>> s; 형태로 명시하면 됩니다.)
여기서 중요한 점은 set의 출력인데 Iterator 형태로 출력해야 합니다.
#include<iostream>
#include<vector>
#include<set>
#define FastIO ios::sync_with_stdio(false); std::cin.tie(NULL); std::cout.tie(NULL);
using namespace std;
int main(void)
{
FastIO;
int N = 0; // N개의 정수
cin >> N;
set<int> setNums;
int input = 0;
for (int i = 0; i < N; i++)
{
cin >> input;
setNums.insert(input);
}
set<int>::iterator iter;
for (iter = setNums.begin(); iter != setNums.end(); iter++)
{
cout << *iter << " ";
}
cout << "\n";
return 0;
}
728x90
반응형
'알고리즘 (C++)' 카테고리의 다른 글
[백준]15900번: 나무 탈출 (1) | 2023.11.23 |
---|---|
[백준]16948번: 데스 나이트 (0) | 2023.11.23 |
[백준] 15886번: 내 선물을 받아줘 2 (0) | 2023.11.20 |
[백준] 15903번: 카드 합체 놀이 (0) | 2023.11.16 |
[피보나치 수열] 2가지 방법 (0) | 2023.11.14 |