1280번 - 나무 심기
제가 처음으로 시간초과 오류를 받았는데
일단 알고리즘이 틀려서 그런지 아니면 알고리즘은 맞지만 최적화가 안되서 그런지 문제점 부터 잘 모르겠습니다.
어떻게 해결해야 되는지 감이 안옵니다.
(재귀함수가 속도를 느리게 할 수 있다고해서 for문으로도 바꿔보았고
지역변수를 줄이면 좋다고 해서 전역변수로도 바꾸어 보았는데 둘다 안되었습니다)
시간복잡도를 계산해 보세요. n+(n-1)+(n-2)+...1 이니까, O(n^2)입니다. 20만의 제곱은 약 400억인데, 프로그램이 1초에 돌릴 수 실행할 수 있는 양은 많아야 20억입니다.
공부하면서 시간복잡도는 스킵했었는데 이럴때 확실히 알수 있네요!!
감사합니다!
댓글을 작성하려면 로그인해야 합니다.
rmstjr1213 5년 전
제가 처음으로 시간초과 오류를 받았는데
일단 알고리즘이 틀려서 그런지 아니면 알고리즘은 맞지만 최적화가 안되서 그런지 문제점 부터 잘 모르겠습니다.
어떻게 해결해야 되는지 감이 안옵니다.
(재귀함수가 속도를 느리게 할 수 있다고해서 for문으로도 바꿔보았고
지역변수를 줄이면 좋다고 해서 전역변수로도 바꾸어 보았는데 둘다 안되었습니다)