ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
위 코드는 입출력싱크를 맞추는 것을 해제한다는 의미이다.
c++에서 대표적인 입출력 함수로는 cin, cout, scanf, printf가 있고
이는 시스템콜관련 함수이므로 같이 쓰일 때는 입출력싱크를 맞춰주어야 한다.
속도(빠른 순) scanf, printf > cin, cout
왜냐면 cin, cout은 c라이브러리인 stdio의 버퍼와 동기화하느라 시간을 소비하기 때문이죠.
이 때 cin, cout의 시간을 빠르게 해주는 방법이 있다. 바로 위코드처럼 싱크를 해제하여
버퍼 동기화를 하지 않는 것이죠. 하지만 이렇게 했을 때 반드시!!cin, cout를 쓸 때 scanf,
printf를 쓰지 말아야 합니다. 동기가 풀리니 모르는 사이드 이펙트가 발생할 수도 있는 것이죠.
'알고리즘 > 기본 문법' 카테고리의 다른 글
DFS, BFS (0) | 2022.08.02 |
---|---|
<알고리즘> 2차원 배열 회전 (0) | 2022.04.22 |
<알고리즘> 2차원 배열 수정하는 함수 (0) | 2022.04.22 |
<알고리즘> n진법 변환 (0) | 2022.04.22 |
<알고리즘> 배열 부분 회전 (0) | 2022.04.22 |