안녕하세요, 우아한테크코스 백엔드 6기 폭포입니다. 우테코를 하면서 진행한 테코톡에서 다이나믹 프로그래밍(DP)을 주제로 발표를 했고, 그 내용이 영상으로 정리되어 유튜브에 업로드되어 있습니다.

👉 [10분 테코톡] 폭포의 다이나믹 프로그래밍

🎤 왜 이 주제를 선택했는가?

저 역시 처음엔 DP가 막연하게 어렵게 느껴졌습니다. “작은 문제로 나눈다”, “점화식을 세운다”는 말은 들었지만, 실전 문제 앞에서는 항상 “뭘 기준으로 나누는 거지?”, “이게 정말 DP인가?”하는 생각이 들었습니다.

그래서 이 발표에서는 이론적인 설명보다 ‘구조적인 사고 방법’을 중심으로 정리해봤습니다. 이 영상 하나로 DP를 완벽히 마스터할 순 없지만, 적어도 어디서부터 출발해야 하는지, 생각을 어떻게 시작해야 하는지는 잡을 수 있을 겁니다.

🧭 영상에서 다루는 내용

  • DP의 본질은 메모이제이션이다
    • 한 번 계산한 결과를 저장하고 재사용하는 방식에서 출발합니다.
  • 예제를 통해 점화식 도출 과정을 구조적으로 따라가기
    • 백준의 01타일, 쉬운 계단 수 문제를 통해 상태 정의 -> 관계 분석 -> 점화식 도출로 이어지는 흐름을 정리했습니다.
  • 이 문제가 DP인지 어떻게 알 수 있을까?
    • 실전에서는 문제 분류가 없기 때문에, 시간복잡도와 본인만의 알고리즘 프로시저로 접근하는 방법을 제시했습니다.

🗂️ 예제 문제 링크

📌 이런 분들께 추천드려요

  • DP 개념은 알지만 직접 적용이 잘 안 되는 분
  • 점화식을 세우는 게 늘 막막한 분
  • 문제를 보고 이게 DP 문제인지 판단하는 기준이 없는 분
  • 알고리즘을 단순 암기보다 구조적으로 이해하고 싶은 분

💬 영상을 통해 전달하고 싶은 메시지

DP는 ‘공식 외우기’가 아닙니다. 중요한 건 상태 정의와 관계 분석, 그리고 한 번 계산한 결과를 재활용할 수 있는가라는 본질입니다.

“현재 상태는 과거 상태에서 어떤 ‘행동’을 한 결과이다.”
이 관점이 잡히면, DP는 생각보다 훨씬 더 명확해집니다.

짧지만 핵심만 담았습니다. 혹시 DP에 대한 두려움이 있다면, 이번 기회에 시야를 확장해보셨으면 좋겠습니다. 감사합니다.

🎥 영상 보러 가기

👉 [10분 테코톡] 폭포의 다이나믹 프로그래밍

태그:

카테고리:

업데이트:

댓글남기기