ybt放蘋果
1206:放蘋果
時(shí)間限制: 1000 ms 內(nèi)存限制: 65536 KB
提交數(shù): 17000 通過(guò)數(shù): 10672
【題目描述】
把M個(gè)同樣的蘋果放在N個(gè)同樣的盤子里,允許有的盤子空著不放,問(wèn)共有多少種不同的分法?(用K表示)5,1,1和1,5,1 是同一種分法。
【輸入】
第一行是測(cè)試數(shù)據(jù)的數(shù)目t(0<=t<=20)。以下每行均包含二個(gè)整數(shù)M和N,以空格分開(kāi)。1<=M,N<=10。
【輸出】
對(duì)輸入的每組數(shù)據(jù)M和N,用一行輸出相應(yīng)的K。
【輸入樣例】
1 7 3
【輸出樣例】
8
遞推代碼:
#include<iostream>
using namespace std;
int a[11][11],t;
int doit()//a[][],m個(gè)蘋果放到n個(gè)盤子方案
{ for(int m=0;m<=10;m++)
for(int n=0;n<=10;n++)
{ if(m==0||n==1) //3種情況構(gòu)造
a[m][n]=1;
else if(m>=n)
a[m][n]=a[m-n][n]+a[m][n-1];
else a[m][n]=a[m][m];
}
}
int main()
{
int m,n;
doit(); //方案預(yù)處理
cin>>t; //查詢
while(t--)
{ int m,n;
cin>>m>>n;
cout<<a[m][n]<<endl;
}
return 0;
}
浙公網(wǎng)安備 33010602011771號(hào)