mkkim1778   5년 전

해당 문제를 Python으로 해결한 사람들의 소스코드를 보면, 

대부분의 경우, tetromino의 위치를 미리 저장(?)해 놓고,

3중 포문을 돌면서 (tetromino 19개, row n, column m) 정수합을 계산하는 형식인데요, 


이처럼 단순히 값을 읽는 작업을 여러번 반복하는 소스코드 마저도 파이썬에서는 사소한 차이로 시간 초과가 났습니다.

저 같은 경우에는, 위 3중 포문에서 각 tetromino를 놓을 수 있는지를 확인할 때, 

index의 범위를 부등식 조건으로 검사하면 시간초과가 되다가, 이를 try: except: 로 처리했을 때는 통과되었습니다.

(이 역시, 다른 분의 소스코드를 보고 발견했는데, 그 분께 감사드립니다)

다시 본론으로 돌아와서, 이 문제를 파이썬으로 해결하려면, 시간 초과 해결이 가장 큰 문제인것 같은데, 

위 경우말고도, 파이썬에서 시간을 조금이라도 줄여볼 수 있는 Tip들이 있는지 알고 싶습니다ㅠ.ㅠ


그리고 이 문제, 파이썬으로는 DFS 방법으로 시간 내에 실행될 수는 없는건가요? 

(알고리즘에 틀린 부분이 없다고 생각함에도 DFS로 풀었을때 시간 초과가 되었습니다.)

mkkim1778   5년 전

감사합니다!  문제를 작성하고서, 저 게시글을 보았네요.

그래도 혹시나, 저 페이지에 적혀있는 Tip들말고도 이 문제에서 적용될 수 있는 python 시간 줄이기 tip이 있는지 궁금합니다~

jh05013   5년 전

시간 줄이기는 https://wiki.python.org/moin/T... 이것으로 상당량 커버할 수 있을 것 같습니다. 참고로 저 블로그 글 중 이 문제에 해당되는 사항은 "Pypy로 제출하라" 입니다.

mkkim1778   5년 전

아하 넵! 해보겠습니다 감사합니다!!!

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