생각Github - https://github.com/hellojdh/Code/blob/master/src/baekjoon/q1000/Q9095.java n이 주어질 때, 1과 2와 3을 이용해서 n을 만들 수 있는 경우의 수를 출력하여라. 더하는 순서에 따라 다른 가지수로 인정한다. 예를들어 1+2와 2+1은 다른 가지수이다. n의 최대값은 11까지 주어진다. 처음 생각이전에는 재귀를 통한 DFS 완전 탐색을 통해 문제를 풀었었다. [백준] 9095번 1, 2, 3 더하기 이번에는 풀고보니 DP로 푼걸로 봐서 이전 보다는 풀이 접근이 좋아진것 같다는 생각이 든다.▶ 이전에 풀었던 완전탐색의 경우는 N의 크기가 커질경우 스택 초과 에러나 시간 초과를 받을 수도 있지만 DP는 O(N)으로 접근이 가능하기 ..
1) 생각 숫자 n이 주어지면 1, 2, 3을 더해가면서 n이 만들어 질 수 있는 개수를 구하여라. 처음 생각문제 분류를 보면 다이나믹 프로그래밍으로 되어있으나 n의 범위가 11보다 작으므로 완전 탐색을 이용해서 풀었다. 2) 방안 더하고 있는 값이 n보다 커질 경우 탐색에 의미가 없으므로 return 해주었다. 12345678910111213141516171819202122232425262728293031import java.io.IOException;import java.util.Scanner; public class Main{ static int n; public static void main(String[] args) throws IOException { Scanner sc = new Scanne..
- Total
- Today
- Yesterday