描述
把m個同樣的蘋果放在n個同樣的盤子裡,允許有的盤子空著不放,問共有多少種不同的分法?
(用k表示)5,1,1和1,5,1 是同一種分法。
輸入第一行是測試資料的數目t(0 <= t <= 20)。
以下每行均包含二個整數m和n,以空格分開。1<=m,n<=10。
輸出
對輸入的每組資料m和n,用一行輸出相應的k。
樣例輸入
7 3樣例輸出
我の思考
這個問題用遞迴的思維來做,我們需要明確,它應該有兩個引數,乙個是蘋果的數量m,乙個是盤子的數量n。
然後我們再根據m與n的比較來劃分情況,注意,它的重複條件。
1.當m>n(蘋果更多)時,每個盤子肯定至少有乙個蘋果,所以我們需要考慮的就是如何把m-n個蘋果放入n個盤子裡面。
2.當m3.當m=n(蘋果和盤子一樣多時),我們可以分為每乙個都放乙個蘋果,也就是1次,還有當空出盤子放的情況。
我の**
#include usingnamespace
std;
int func(int m,int
n)
if(n==m)
if(mif(m>n)
}int
main()
return0;
}
我の小結
這類題目應該首先確定好引數的數量,再想辦法找出引數之間的關係組成,從而的到答案。
666 放蘋果 遞迴
描述 把m個同樣的蘋果放在n個同樣的盤子裡,允許有的盤子空著不放,問共有多少種不同的分法?用k表示 5,1,1和1,5,1 是同一種分法。輸入第一行是測試資料的數目t 0 t 20 以下每行均包含二個整數m和n,以空格分開。1 m,n 10。輸出對輸入的每組資料m和n,用一行輸出相應的k。樣例輸入 ...
遞迴 放蘋果
遞迴 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。輸出要求 對輸入的每組資料...