그것의 첫 번째 라인의 직접 열거 있도록, 단지 파스칼의 삼각형의 숫자로 최종 각 번호가 나타납니다의 첫 번째 줄을 얻으려면 (그리고 추가 할)
AC 코드 :
1 #INCLUDE <iostream> 2 #INCLUDE <cstdio> 3 #INCLUDE <알고리즘> 4 5 이용 스페이스 성병; 6 7 INT의 레프 [ 12 ] [ 12 ]; 8 INT의 상자 [ 12 ]; 9 INT의 N, S; 10 11 12 공극 () {해결 13 INT의 합; 14 레프 [ 1 ] [ 1 ] = 1 ; 15 대 ( INT는 난 = 2 I <=;10 ; I ++ ) { 16 대 ( INT J = 1 ; J <= I, J ++ ) { 17 일 경우 (j == 1 || J == ⅰ) 레 [I]는 [j]가 = 1 ; 18 다른 { 19 레프 [I] [J] = 레프 [Ⅰ- 1 ] [J - 1 ] + 레프 [Ⅰ- 1 ] [J]; 20 } 21 } 22 } 23 는 scanf ( " % D % D " , N, S); 24 대 ( INT 난 = 1 ; 나는 <= N; 나는 ++) { 25 상자 [I]은 난; 26 } 27 어떻게 { 28 합 = 0 ; 29 대 ( INT 나 = 1 ; i가 <= N; I ++ ) { 30 합 상자 + = [I] * 레프 [n]은 [I]; 31 } 32 경우 (합 == S) 휴식 ; 33 } 동안 (next_permutation (박스 + 1 상자 + N + 1 )); 34 대 ( INT 난 = 1 ; 나는 <= N; I ++ ) { 35 의 printf ( " % D % C " , 상자 [I] I == N? ' \ n ' : ' ' ); 36 } 37 } 38 39 INT {) (주 40 (해결); 41 반환 0 ; 42 }