PS알못 OrbitHv의 PS logo PS알못 OrbitHv의 PS

태그:

14. 동적 계획법 1 CLASS 3 ESSENTIAL

주어진 정수에서 1을 빼거나 2로 나누거나 3으로 나누는 연산을 최소 몇 번 진행하여 1을 만들 수 있는지 구하는 문제입니다. memoization 기법을 사용하는 것인데, 사용한 연산의 횟수를 저장할 길이 N+1의 배열을 만들고 a[2]a[3]에 1을 집어넣습니다. 그리고 조건에 따라 4부터 N까지 연산 횟수를 구하여 채워넣고 a[N]을 출력합니다.

소스 코드

언어 코드 시간
Python 3 코드(Github) / 코드(백준) 2020-03-31 21:12:06