shdudtjr77   3년 전

제가 생각한 풀이는 

만약 입력이

3

1 3 7

3

이라면

1 ~7까지 초소한의 숫자를 이용한 가짓수를 저장합니다.(이과정에서 만약 제한 갯수를 넘는게 있다면 실행을 중단하고 출력을 해줍니다.)

(dp[1]~dp[7])

다음 부터는 

8을 만들기위해서는 dp[1]+1(7)

9 dp[2]+1(7)

....

이와 같은 방식으로 dp[i]=dp[i]+1 점화식을 만들어 for문이 7번 돌면 다시 1에서 시작하며 제한 갯수를 넘는 경우까지 실행을 해줍니다.


이렇게 해결을 하려고 접근하였는데 27%정도에서 틀리네요 ㅠㅠ (숫자의 종류중 음수를 받는 경우도 예외처리 해준 상태입니다.)

고수님들의 답변을 기다리겠습니다. 
 

댓글을 작성하려면 로그인해야 합니다.