-
https://www.acmicpc.net/problem/13701
백준 온라인저지 13701번 중복제거 문제입니다.
#include<iostream> #include<bitset> using namespace std; bitset<1 << 25> bit; int main(void) { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n; while (cin >> n) { if (bit[n]) continue; bit[n] = 1; cout << n << " "; } }
아이디어
비트필드를 이용하면 쉽게 풀 수있는 문제인데, 문제를 푼 후 다른분이 풀이한 코드를 봤는데 처음으로 bitset이라는 자료형을 알게 되었음
이것을 사용하면 깔끔하게 풀이가 가능함 bitset에 대해 파봐야겠음
그리고 이 문제는 cin, cout을 사용할시 시간초과를 받기때문에 printf, scanf를 사용하거나 ios_base::sync_with_stdio(false) , cin.tie(NULL), cout.tie(NULL)을 이용해서 iostream과 stdio의 버퍼 동기를 끊어 줘야 정답을 받아낼 수 있음
'알고리즘 > 백준' 카테고리의 다른 글
BOJ13701 /C++ (0) 2022.05.22 BOJ1194 달이 차오른다, 가자. /C++ (0) 2022.04.21 BOJ1562 계단수/C++ (0) 2022.03.13 BOJ16938 캠프준비 / C++ (0) 2022.03.13 BOJ18119 단어 암기 /C++ (0) 2022.03.13 댓글