【蓝桥杯】分糖果(DFS)

问题描述

两种糖果分别有 9个和 16 个,要全部分给 7 个小朋友,每个小朋友得到的糖果总数最少为 2个最多为 5 个,问有多少种不同的分法。糖果必须全部分完。

只要有其中一个小朋友在两种方案中分到的糖果不完全相同,这两种方案就算作不同的方案。

答案提交

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 256M

总通过次数: 1358 | 总提交次数: 1521 | 通过率: 89.3%

难度: 简单 标签: 2023, 枚举, 省赛, DFS

代码分享:

cpp 复制代码
#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;
}
相关推荐
倚楼听风语29 分钟前
Kotlin 协程与 suspend 原理详解
java·算法·kotlin
程序员清风31 分钟前
双指针与滑动窗口:高效处理连续区间
开发语言·算法
代钦塔拉36 分钟前
【C++/Qt 进阶】设计模式系列(2):工厂模式——从游戏角色到披萨店
c++·算法·设计模式
思茂信息41 分钟前
电磁仿真学涉及哪些算法?
人工智能·算法·数学建模·matlab·emc·电磁仿真·仿真辐射
糖果豆豆1 小时前
让 AI 自查三遍,它只会把错的说得更像对的——检查的人和被检查的,是同一个
算法·架构
把我格子衫拿来2 小时前
VTK 与 Qt 的 CMake 工程怎么组织?模块、工具链与二进制兼容排错
c++·qt·vtk·cmake·工程实践
总裁余(余登武)3 小时前
K-means算法改进(Python版)
python·算法·kmeans
灯澜忆梦3 小时前
【面向对象编程c++】| 指针与自定义数据类型
开发语言·c++·算法
xxwl5853 小时前
区域赛算法模版第八章---贪心(Greedy)
c++·笔记·学习·算法
雾沉川3 小时前
Visual C++运行库合集 v105.0 安装教程
开发语言·c++·dll