1.題目描述
小蒜想知道把 m個同樣的蘋果放在 n個同樣的盤子裡,允許有的盤子空著不放,共有多少種不同的分法?(用 k表示)5,1,1和 1,5,1 是同一種分法。
輸入格式
第一行是測試資料的數目 t(0≤t≤20)。
以下每行均包含兩個整數 m和 n,以空格分開。1≤m,n≤10。
輸出格式
對輸入的每組資料 m和 n,用一行輸出相應的 k。
輸出時每行末尾的多餘空格,不影響答案正確性
樣例輸入複製
17 3
樣例輸出複製
82.解題思路
將m個蘋果放在n個盤子裡面(f(m,n))
當m當m>=n時可以分為兩種情況:
a,至少有乙個盤子是空的(f(m,n-1)),即有空盤子;
b,沒有空盤子,則每個盤子裡面至少有1個蘋果,每個盤子裡面去掉乙個蘋果不影響方法數目,相當於將m-n個蘋果放在n個盤子裡(f(m-n,n));
3.**
1 #include2using
namespace
std;
3int f(int m,intn)4
9int
main()
1019
return0;
20 }
遞迴 放蘋果
遞迴 includeusing namespace std int count int m,int n int main 執行結果 enter n case 2enter two intengers 7 3the total path is 8 enter two intengers 10 8 th...
遞迴 放蘋果
問題描述 把 m 個同樣的蘋果放在n 個同樣的盤子裡,允許有的盤子空著不放,問共有多少 種不同的分法?用k 表示 注意 5,1,1 和1,5,1 是同一種分法。輸入資料 第一行是測試資料的數目t 0 t 20 以下每行均包含兩個整數m 和n,以 空格分開。1 m,n 10。輸出要求 對輸入的每組資料...
遞迴 放蘋果
問題描述 把 m 個同樣的蘋果放在n 個同樣的盤子裡,允許有的盤子空著不放,問共有多少 種不同的分法?用k 表示 注意 5,1,1 和1,5,1 是同一種分法。輸入資料 第一行是測試資料的數目t 0 t 20 以下每行均包含兩個整數m 和n,以 空格分開。1 m,n 10。輸出要求 對輸入的每組資料...