2018년 3월 24일 토요일

Dynamic Programming 복습 1

다이내믹 프로그래밍은 아래 두가지 성질을 만족해야 한다.

1. overlapping subproblem
   - (겹치는 부분 문제)
   - 큰 문제와 작은 문제는 상대적이다.
   - 큰 문제와 작은 문제를 같은 방법으로 풀 수 있음
   - 문제를 작은 문제로 쪼갤 수 있다.
2. optimal substructure
   - 문제의 정답을 작은 문제의 정답에서 구할 수 있다

How-to-solve
1. top-down
   - 재귀(recursive)
2. bottom-up
   - for문

예시
1. 피보나치
2. 1로 만들기

2번 문제 풀이
1.top-down(recursive)






















2. bottom-up(반복문)
 

댓글 없음:

댓글 쓰기