: 용어 자체가 어느 한 부분에 삽입한다는 어감이다.\-> 인덱스 1번의 데이터값을 임시변수에 저장후, 앞으로 이동 + 값을 비교하면서 해당위치에 삽입하겠다 라고 이해를 하자. 그러면 이렇게 작성할 수 있다.
재귀 사용\-> 끄적여보면 재귀를 사용하면 될것 같았음.dp 사용 : 어떻게 작성해야 할지 모를때는 경우의 수를 만들어보자. \-> 점화식을 만들 수 있따. d3 = d1 + d2;d4 = d3 + d2;재귀 dp;
구현인가? 라는 생각을 했지만, 왼쪽, 위쪽을 보고 최소값을 찾아내는 방법으로, 이전값 결과를 통해 결과를 도출해나가는 것이므로 다이나믹 프로그래밍이라는 것을 생각할 수 있다. 처음에는 구현으로 접근 + 문제를 이해하지 못한 상태로 접근해서 못 풀었다.
1) 그리디로 하기에는 예외조건이 있따. 예제) 동전이 8이고, 1,4,5원이 존재할 때 최소 개수를 구할 경우그리디로 접근하면 가장 큰 5로 나눈 후 나머지는 낮은 수로 처리를 하겠다! 라고 생각하고 접근하면 5 ( 1)+ 1 ( 3) -> 총 4개이다.but! 최적
인프런의 김태원 강사님의 알고리즘을 공부하고 정리한 내용입니다. 1) 브루트포스로 접근하려고 했으나, 시간 복잡도가 높아진다. 사용하는 보석, 사용하지 않는 보석 -> 2의 n제곱 형태이다.이때 n은 보석의 갯수이다. 2) dp로 접근해야 한다.