題目
思路
設f(m,n) 為m個蘋果,n個盤子的放法數目:
當n>m:必定有n-m個盤子永遠空着,去掉它們對擺放蘋果方法數目不産生影響。即if(n>m) f(m,n) = f(m,m)
當n<=m:不同的放法可以分成兩類:
(1)有至少一個盤子空着,即相當于f(m,n) = f(m,n-1);
(2)所有盤子都有蘋果,相當于可以從每個盤子中拿掉一個蘋果,不影響不同放法的數目,即f(m,n) = f(m-n,n).而總的放蘋果的放法數目等于兩者的和,即 f(m,n) =f(m,n-1)+f(m-n,n)
遞歸出口條件說明:
代碼