c++의 입출력(cin, cout) 처리속도
백준 1717번 집합의 표현 에 Union-Find 알고리즘을 적용하여 문제를 풀었는데 같이 푼 다른 사람들은 다 맞는데 나만 시간초과가 났다. 같은 알고리즘의 같은 방식의 예외처리를 한 사람도 있었는데 도대체 왜 시간초과가 났을까? 친구에게 조언을 구해보니 문제는 cin과 cout에 있었다. 나는 c++을 사용할 때 입출력 함수로 cin과 cout을 사용하는데, cin과 cout은 printf와 scanf에 비해 어마무시하게 느리다는 사실을 듣게되었다. 왜 속도가 차이가 날까? cstdio의 prinft, scanf는 데이터의 타입을 프로그래머가 지정해줘야해서 오류가 발생할 수는 있지만 더욱 빠른 속도를 내고iostream의 cout, cin은 입출력 데이터의 타입을 프로그래머가 지정해주지 않아도 타입..
정리/기타
2019. 1. 10. 01:04