동전 부문

동전 부문

1 분, 2 분, 5 분, 10 분의 동전 4 개의 종류 센트 구성 될 수있는 번호 n은 각각 소정 센트 N (N <= 100,000)를 조합하여 동전의 무제한?

설명을 입력합니다 :
입력 정수 n. (1 <= N <= 100000)


출력 설명 :
조합의 출력 번호, 1E9 + 7 모드에 대한 대답.
예 1

기입

(13)

수출

16 

인기있는 토론 : 예를 들면 : {1,2,5,10}, 다음 5 만 (12)의 할당의 유형에 완료 전체 DP 배열을 통과하지만,하지 않을 때 (12)을 통과 한 후 이송시 12 5 7과 같은 시작 시작
DP [7] 12 분 할당 스토리지의 유형, 스팬 5 5 분배 시작하기 시작하다 (7-5 = 2)를 발견 DP [2] (이 경우에는 2 1 2 위치 할당 완료)이 위치 만 다른 7 플러스 DP을 추가 할 필요가있다 [2] +1
수단 (이 유형의 2 플러스 25 (의 번호를 할당하는 2+ 백 (12) 아래에서 숫자 7을 상상할 수 공감 유형의 개수 등은 어렵지 않다 (5) = 7)이 분류).
: 증명 링크 첨부
https://www.cnblogs.com/wuxie0ne/p/11603807.html를
1 #INCLUDE <. 비트 / stdc ++ H>
 2 #INCLUDE <알고리즘>
 3  사용  스페이스 성병;
4  CONST    개조 1E9 + = 7 ;
5  INT ) (주
 6  {
 7       길이 N;
8      는 scanf ( " %의 LLD " , N);
9        NUM [ 4 ] = { 1 , 2 , 5 , 10 };
10        DP [ 100010];
11      memset 함수 (DP, 0 , 는 sizeof (DP));
(12)      (DP)은 [ 0 ] = 1 ;
13       ( INT의 J = 0 ; J < 4 ; J ++ ) {
 14           ( INT I = NUM [J] 난 <= N; 내가 ++ ) {
 15              DP [I] = (DP [I] + DP [I- NUM [J]) %의 모드;
16          }
 17      }
 18      의 printf ( " %의 LLD " , DP [N]);
19      반환  0 ;
20 }
대답

 

추천

출처www.cnblogs.com/djf666/p/11774423.html