yoonjong1820   3년 전

예제는 출력이 잘 나오는데 시간초과가 떠서 질문드립니다.

사실 정확히 무엇 때문에 시간초과가 나는지도 잘 모르겠는데, 뭔가 print 때문인 것 같습니다.

제가 푼 방식처럼 main 함수에서 for문 2개 돌려서 일일히 각 위치에 진입해 print 출력하도록 하면 안되는 건가요?

leehe228   2년 전

안녕하세요

아래와 같이 print문 없이 전부 결과를 하나로 합쳐 마지막 한 번에 출력하는 코드로 고쳐 보았습니다.

아래 코드도 시간 초과가 발생하는 것을 보아하니, 출력으로 인한 시간 초과가 아닌, 재귀호출과 많은 문자열 연산으로 인한 오버헤드 발생으로 시간 초과가 발생하는 것 같습니다. (문자열 연산보다 출력 연산의 연산량이 더욱 크니, 재귀 호출로 인한 오버헤드로 추측됩니다)

별과 공백을 한 개 단위가 아닌 입력은 3의 배수이니 높이 3짜리 한 블록 단위로 생각하시면 좋을 것 같습니다.

도움이 되셨길 바랍니다. 감사합니다.
   

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