(poj1664)
把m個同樣的蘋果放在n個同樣的盤子裡,允許有的盤子空著不放,問共有多少種不同的分發(5,1,1和1,1,5是同一種方法)
輸入格式:
第一行是測試資料的數目t(0 <= t <= 20),以下每行均包括二個整數m和n,以空格分開。1<=m,n<=10
輸出格式:
對輸入的每組資料m和n,用一行輸出相應的k。
輸入樣例#1: 複製
1輸出樣例#1: 複製7 3
8輸入樣例#2: 複製
1輸出樣例#2: 複製7 3
8正解思路:動態規劃。
f[i][j]表示放完了前i個蘋果後,有j個盤子不為空,有多少種方案。
#include#include10分暴力**#include
#include
#include
using
namespace
std;
mapvis;
intt,n,m,ans;
int num[11],bns[11
];void dfs(int
x)
return
; }
for(int i=1;i<=m;i++)
}int
main()
}
#include#include#include
#include
using
namespace
std;
intt,n,k,ans;
int dp[1000][1000
];int
main()
dp[i][j]=max(dp[i-j][j]+dp[i-1][j-1
],dp[i][j]);
}for(int i=1;i<=k;i++) ans+=dp[n][i];
cout
<0
; memset(dp,
0,sizeof
(dp));}}
洛谷 P2386 放蘋果
poj1664 把m個同樣的蘋果放在n個同樣的盤子裡,允許有的盤子空著不放,問共有多少種不同的分發 5,1,1和1,1,5是同一種方法 輸入格式 第一行是測試資料的數目t 0 t 20 以下每行均包括二個整數m和n,以空格分開。1 m,n 10 輸出格式 對輸入的每組資料m和n,用一行輸出相應的k。...
洛谷P2386 放蘋果 題解 搜尋入門
題目大意 把m個同樣的蘋果放在n個同樣的盤子裡,允許有的盤子空著不放,問共有多少種不同的分發 5,1,1和1,1,5是同一種方法 解題思路 搜尋列舉所有方案,乙個乙個放。我開dfs int id,int left 表示 當前正準備放第 id 個盤子,還剩餘 left 個蘋果沒有放 的狀態。則 如果當...
P2386 放蘋果(排列組合問題)
目錄dp dfs把m個同樣的蘋果放在n個同樣的盤子裡,允許有的盤子空著不放,問共有多少種不同的分發 5,1,1和1,1,5是同一種方法 輸入格式 第一行是測試資料的數目t 0 t 20 以下每行均包括二個整數m和n,以空格分開。1 m,n 10 輸出格式 對輸入的每組資料m和n,用一行輸出相應的k。...