출력이 느립니다.
fmt.Fprintln(os.Stdout, ...)을 하게 되면 출력 후 그때그때 flush를 하게 됩니다. 이러면 Fprintln을 사용하는 의미가 없습니다.
빠른 출력을 위해서는 출력할 문자를 담아뒀다가 한꺼번에 출력하는 BufferedWriter를 사용해야 합니다. 아래와 같이 사용할 수 있습니다.
단, 반드시 수동으로 BufferedWriter를 flush해줘야 합니다. 이는 main 함수 맨 앞에 defer out.Flush()를 추가함으로써 수행할 수 있습니다.
seolminsik 1년 전
같은 pseudo code로 작성한 Go풀이와 C++풀이에서 C++풀이만 맞았습니다.
그래서 Go로 풀이할 때 파일 입출력 시간 때문에 시간 초과가 났다고 생각이 됩니다만, Fscan을 사용하고 있는 현재 상황에서 파일 입출력을 잘못 이용하고 있는 지 또는 알고 보면 다른 부분에서 문제가 있었는지 조언을 듣고 싶습니다!
C++ 풀이 : https://www.acmicpc.net/source...
Go 풀이 : https://www.acmicpc.net/source...