gktgnjftm   1년 전

map으로 그냥 갯수 카운트를 한다음, 최대갯수의 string을 저장해서 출력하는용으로 짰습니다.

게시판에 있는 예제는 다 돌아갑니다 ㅠㅠ

gktgnjftm   1년 전

ios_base::sync_with_stdio(false);

이거있을때는 cin이랑 scanf를 동시에 쓰면 틀리는것 같습니다. 둘중에 하나만 선택하면 맞습니다 ㅠㅠ

jwvg0425   1년 전

ios_base::sync_with_stdio(false); 를 쓰면 C++입출력의 속도가 빨라지니까 쓴다. 라고만 단순하게 이해하고 코드를 쓰시기 보다, 왜 그렇게 되는지 동작을 이해하고 넘어가시는게 좋습니다. sync_with_stdio(false)라는 이름에서 알 수 있듯 이 코드는 cin/cout등의 C++ 입출력 함수와  scanf/printf 등의 기존 C언어 입출력 함수간의 동기화를 끊어주는 역할을 합니다. 원래 하던 동기화 작업을 안하니 당연히 C++의 입출력 함수 속도가 빨라지는거구요.

하지만 말 그대로 동기화를 끊어주기 때문에, 두 가지를 섞어서 쓸 때 결과가 어떻게 될지 예측할 수 없습니다(undefined behaviour). 일반적으로 Visual studio 환경(+디버그 모드)에서는 아무 오류없이 동작하는 걸로 보이지만 항상 그렇게 잘 동작한다는 보장도 없고 실제로 제출해보면 알 수 있듯 두 가지가 섞여 있는 코드는 정상동작 하지 않아서 WA를 받게 되구요.

gktgnjftm   1년 전

아하 정확하게 알지못하고 그냥 쓰듯이 했는데, 정확하게 알게된거같습니다 감사합니당 ㅠㅠ

댓글을 작성하려면 로그인해야 합니다.