yordlejason   6년 전

이전에 제출했던 코드는 시간 초과로 실패,

마지막에 제출한 코드는 메모리 초과로 실패 처리를 받았습니다. 


가능하시다면 제 코드상에서 문제가 될만한 부분을 지적해주시면 

고쳐보겠습니다. 혹은, '알고리즘 자체가 비효율의 극치다!' 라고 생각하시면

솔직하게 따끔히 말씀해주셔도 정말 좋습니다 (추가로 참고하거나 알아야 할 지식을 알려주신다면 더더욱 따봉!...)


소중한 시간 할애해주셔서 감사합니다 :-)

답변 기다리겠습니다..!

jh05013   6년 전

메모리와는 별개로, "lambda x: int(x)" 대신 그냥 "int"라고만 해도 됩니다.

D의 크기가 len(row1)*N인데 len(row1)은 N이므로 N^2이 됩니다. 이 정도의 배열로는 메모리 초과가 나고, 배열 없이 이중 for문을 돌려도 O(N^2)이므로 시간초과가 납니다.

yordlejason   6년 전

@jh05013

좋은 지적 감사합니다.

첫번째로 지적해주신 lambda x: int(x) 대신 int를 사용해도 된다고 하신 부분은 알려주신 덕분에 오개념을 잡았습니다.

두번째로 지적해주신 부분은 곰곰히 생각해봤는데, 배열을 만드는 방법 외에는 뾰족하게 떠오르는 방법이 없습니다. 혹시 권해주실만한 풀이가 있으신가요?

jh05013   6년 전

for _ in range(N)은 필요 없는 것 같습니다.

yordlejason   6년 전

@jh05013

지적 감사합니다.

지난번에도 도움주셨는데 이번에도 좋은 배움 얻어갑니다 :-)

다시 한번 감사합니다!

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