반응형
2225
-
BOJ) 합분해알고리즘/백준 2020. 7. 26. 15:48
합분해 2225번: 합분해 첫째 줄에 답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net 풀이 0~ N까지의 정수 K 개를 선택하여 N을 만드는 경우의 수를 구하는 문제다. 덧셈의 순서가 다르면 다른 경우로 체크한다. (1 + 2 와 2 + 1 은 다른 경우) 각각의 수는 여러번 이용 가능하며, 1,000,000,000으로 나눈 나머지를 출력해야한다. 우선 k개를 이용했을 때, 특정 숫자 n을 구할 수 있는 경우의 수를 담기 위해 2차원 배열의 dp를 선언했다. int[][] dp = new int[k][n]; 우선 k = 1 일 때, (0 ~ N까지 하나만 이용했을 때) 숫자를 만들 수 있는 경우를 1로 저장해줬다. (0이든, 1이든 ... N이든 자기 자신을 딱 하..