问题描述
两种糖果分别有 9个和 16 个,要全部分给 7 个小朋友,每个小朋友得到的糖果总数最少为 2个最多为 5 个,问有多少种不同的分法。糖果必须全部分完。
只要有其中一个小朋友在两种方案中分到的糖果不完全相同,这两种方案就算作不同的方案。
答案提交
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。
运行限制
- 最大运行时间:1s
- 最大运行内存: 256M
总通过次数: 1358 | 总提交次数: 1521 | 通过率: 89.3%
难度: 简单 标签: 2023, 枚举, 省赛, DFS
代码分享:
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int ans=0;
void dfs(int a,int b,int id){
if(id>7){
if(a==0&&b==0) ans++;
return;
}
for(int i=0;i<=a;i++){
for(int j=0;j<=b;j++){
if((i+j)>=2 && (i+j)<=5)
dfs(a-i,b-j,id+1);
}
}
}
int main()
{
dfs(9,16,1);
cout<<ans;
// 请在此输入您的代码
return 0;
}