보니까 파이썬은 sys.stdin을 쓰고 C++은 getline 함수를 쓰는데, 파이썬 코드는 입력을 한번에 다 받아서 한줄씩 읽는거고, C++은 입력을 한줄씩 받는거임.
그래서 파이썬이 더 빠른거고.
애초에 파이썬도 구현은 C로 구현되있어서 동일코드에서 느리면 더 느렸지 더 빠르긴 힘듬
내가 너무 c++를 많이 쓰다 보니 뇌가 약간 절여져버려가지고 ㅋㅋㅋㅋ;
예를 들어서 std::string을 reference나 rvalue reference로 받지 않고 복사로 받는다거나, std::string 여러 개를 + 나 append 로 합친다거나 하면 성능이 개끔찍해지지
append든 +든 방식이
1) str1.size() + str2.size() 만큼의 메모리 공간을 새로 할당한다
2) 새로 할당한 공간에 str1과 str2를 순서대로 복사한다
기 때문에 더하기 시간복잡도가 매 연산마다 O(m + n)이 돼버리는데... 더하기를 반복하면 str1이 계속 커지니까 (m + n이 새로운 m이 되니까) 여러번 더할 수록 속도가 점점 끔찍해져.