11066번 - 파일 합치기
28번째 줄에서 ans를 초기화 할때 1e9나 5000004와 같이 문제에서 주어진 값을 최대로 해도 저 초기값보다 클 수 없는 값으로 하면 시간초과가 나는 이유가 뭔가요??
재귀함수를 이해하는 부분이 너무 어렵습니다..
정확히 어떻게 쓰셨다는 건지 코드를 볼 수 있을까요? int& ans = d[i][j]; 대신에 int ans = 1e9;와 같이 쓰셨다는 건가요?
넵! int ans=1e9 로 했는데 시간초과가 뜹니다.
그렇게 쓰면 d 배열의 값이 전혀 변하지 않기 때문에 메모이제이션이 발생하지 못하고, 그래서 중복된 탐색을 여러 번 수행하게 됩니다.
감사합니다!
댓글을 작성하려면 로그인해야 합니다.
shinbian11 3년 전
28번째 줄에서 ans를 초기화 할때 1e9나 5000004와 같이 문제에서 주어진 값을 최대로 해도 저 초기값보다 클 수 없는 값으로 하면 시간초과가 나는 이유가 뭔가요??
재귀함수를 이해하는 부분이 너무 어렵습니다..