大形电商网站开发费用,网页怎么制作步骤,工作室需要营业执照吗,wordpress c正题 题目大意
将n个相同球放到k个相同的盒子里#xff0c;求方案数。 解题思路
其实就是将n划分成k份#xff0c;要求前面份的大于等于后面的#xff0c;所以我们可以写dp fi,jf_{i,j}fi,j表示分成i组#xff0c;分了j。 然后 fi,jfi−1,j−1fi,j−if_{i,j}f_{i-1,j-1…正题 题目大意
将n个相同球放到k个相同的盒子里求方案数。 解题思路
其实就是将n划分成k份要求前面份的大于等于后面的所以我们可以写dp fi,jf_{i,j}fi,j表示分成i组分了j。 然后 fi,jfi−1,j−1fi,j−if_{i,j}f_{i-1,j-1}f_{i,j-i}fi,jfi−1,j−1fi,j−i fi−1,j−1f_{i-1,j-1}fi−1,j−1表示分出一个值为1 fi,j−if_{i,j-i}fi,j−i表示前i份都加上一
这个方程因为后面加的时候前面也会加就保证了前面的大于等于后面的。 code
#includecstdio
#define ll long long
#define XJQ 998244353
using namespace std;
ll n,m,f[5010][5010];
int main()
{scanf(%lld%lld,n,m);f[0][0]1;for(ll i1;im;i)for(ll ji;jn;j)f[i][j](f[i][j-i]f[i-1][j-1])%XJQ;printf(%lld,f[m][n]);
}