C++ 빠른 입출력
- 온라인 저지 문제를 풀다 보면 입출력 때문에 시간 초과가 나는 경우도 있다.
- 이때 빠른 입출력을 위한 코드를 추가하면 해결이 된다.
cin.tie(NULL);
cout.tie(NULL);
ios_base::sync_with_stdio(false);
cin.tie(NULL);
입력(cin)과 출력(cout)의 연결을 끊는다.
입출력의 순서가 보장되지 않는 문제가 있지만, 대부분의 온라인 저지 문제는 이것을 고려할 필요가 없으니...
cout.tie(NULL);
cout과 다른 출력 스트림(cerr, clog, ...)의 연결을 끊는다.
ios_base::sync_with_stdio(false);
c++은 기본적으로 iostream과 stdio의 스트림이 동기화되어 있다.
이 연결을 끊는다.
따라서 이 코드 이후에는 scanf(), printf(), getchar(), ...를 쓰면 안 된다.
싱글스레드 환경에서만 쓰도록 하자.
endl 대신 '\n'
endl은 줄바꿈('\n')을 출력한 뒤 출력 버퍼를 flush 한다.
따라서 '\n'만 출력하면 출력 시간을 줄일 수 있다.
'Dev' 카테고리의 다른 글
C++ foreach loop (0) | 2024.11.22 |
---|---|
React JS와 JSX (0) | 2024.11.21 |
C++ is_sorted 정렬 여부 확인 (0) | 2024.11.20 |
C++ STL max_element(), min_element() 사용자 정의 값 비교 (0) | 2024.11.09 |
C++ 공백 포함한 문자열 입력 처리 (0) | 2024.11.06 |