프로그램 에러

[입출력] ios::sync_with_stdio(0) / cin.tie(0)를 쓰는 이유

퍼펙트코딩 2022. 7. 8. 22:48
728x90
반응형

많은 백준 / 프로그래머스 등 온라인 저지 사이트를 사용하며 '시간초과'가 나는 것을 간간히 볼 수 있습니다.

 

일반적인 환경이라면 C의 입출력 stream과 C++의 입출력 stream을 혼용하여 사용할 수 있습니다.

 

하지만 혼용사용시 두 입출력의 동기화 과정에서 실행 속도가 느려질 수 있기 때문에

ios::sync_with_stdio(0);

위의 명령어를 통해 한 쪽만 사용할 수 있도록 하면 실행시간을 절약할 수 있습니다.

 

또한 C++입출력에서의 cin과 cout은 서로 묶여있어 작성 순서에 따라 실행되게 되는데요

 

cin.tie(0);

 

위 명령어를 통해 순서에 관계없이 자료를 입력 / 출력하기 때문에 수행시간을 더욱 가속화 시켜줄 수 있습니다

728x90
반응형