DP2 [백준] 1463번 1로 만들기(python) https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 1. 내가 작성한 코드 import sys num = int(sys.stdin.readline().rstrip()) dp = [0,0,1,1] dp = dp + [0] * (num-3) if num >= 4: for n in range(4,num+1): if n % 2 == 0 and n % 3 == 0: #2,3 모두 나누어 떨어지는 경우 dp[n] = 1 + min(dp[n//2],dp[n//3],dp[n-1]) elif n % 2 == 0: #2로만 나누어 떨어지는 경우 dp[n] = 1 + min(dp[.. 2023. 2. 16. [백준] 9095번 1,2,3 더하기(python) https://www.acmicpc.net/problem/9095 9095번: 1, 2, 3 더하기 각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다. www.acmicpc.net 1. 내가 작성한 코드 t = int(input()) for i in range(t): n = int(input()) d = [0,1,2,4] #1,2,3을 만들 수 있는 경우의 수 if n > 3: d = d + [0] * (n-3) for i in range(4,n+1): d[i] = d[i-1] + d[i-2] + d[i-3] print(d[n]) 1. 수를 만들 때는 1,2,3만을 사용할 수 있다. 1을 만들 수 있는 방법 => (1) => 1가지 2를 만들 수 있는 방법 => (1,1).. 2023. 2. 16. 이전 1 다음