DP(Dynamic Programming) 동적계획법
DP(Dynamic Programming) f(n)을 1부터 n까지의 곱을 구하는 함수라고 정의를 내리면 f(n) = f(n-1)*n (n>1) : 점화식 f(1) = 1 : 초기조건 첫번째방법으로 for loop를 통하여 1부터 n번까지의 곱을 구할 수 있습니다. f(i-1)의 값을 알고있다는 전제하에 f(1)을 초기조건으로 설정하면 f(n)의 값을 구하는것이 가능해집니다 f[1]=1 for i in range(2,n+1): f[i] = f[i-1]*i print(f[n]) 두번째 방법으로는 재귀함수를 이용하는 것입니다. 백트래킹과 유사하게 종료조건을 초기조건으로 넣어주고 else 부분을 점화식으로 작성해주면 됩니다. def f(n): if n==1: return 1 else: f[n] = f[n-1]..
자료구조 알고리즘/자료구조
2022. 4. 25. 02:04