整数N にk個の各部品、及び空にすることはできません、任意の二つの方式は(順番に関係なく)が異なります。
例えば:。N- = 7 、K = 3 、次の三つのサブ方法が同じであると考えられます。
1,1,5 ;
1,5,1 ;
5,1,1;
Q.どのように多くの異なるポイントシステム。
サンプル入力と出力
入力サンプル#1:
コピー
7 3
出力サンプル#1:
コピー
4
書式#include <iostreamの> の#include <アルゴリズム> 使用して 名前空間はstdを、 INTのN、K、CNT。 ボイド DFS(INT U、INT和、int型のCUR){ 場合(CUR == K){ 場合(和== N)CNT ++ 。 返します。 } のための(INT I = U;和+ iが(K-CUR)を* <= N; iが++ ) DFS(I、和 + I、CUR + 1 )。 } INTメイン(ボイド){ CIN >> N >> K。 DFS(1、0、0 ); coutの << CNT << てendl; }