PS 했던 블로그

  • 홈
  • 태그
  • 방명록

2025/02 1

메모이제이션은 계산 결과가 될 수 없는 값으로 해야 합니다.

재귀로 작성한 다이나믹 프로그래밍에서 한 번 계산한 결과를 기록해 두고 같은 상태에 재방문했을 때 재계산을 하지 않고 기록해 둔 값을 바로 반환하는 메모이제이션은 필수적인 기법 중 하나입니다. 여기에서 중요한 것은 코드가 이미 계산했던 결과인지 여부를 판단할 수 있어야 한다는 것입니다. 이 말만 들으면 별로 특별할 것이 없어 보이는데, 실제로 재귀 DP에서 이 부분은 매우 자주 실수하고 시간 초과를 받게 되는 원인입니다. 예를 들어 11048 - 이동하기 문제에서 다음과 같은 코드를 작성할 수 있습니다.#include using namespace std;int n, m;int a[1005][1005];int dp[1005][1005];int f(int r, int c){ int &ret = dp[r..

PS/자주 하는 답변 2025.02.14
이전
1
다음
더보기
프로필사진

PS 했던 블로그

  • 분류 전체보기 (36)
    • 공지 (1)
    • PS (35)
      • 자주 하는 답변 (35)

Tag

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/02   »
일 월 화 수 목 금 토
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바