【深度优先搜索】记忆化搜索 P1077 摆花
题意:
深度优先搜索:
int dfs(index,cnt)表示选到第index个花,且当前一共选了cnt个
结果为dfs(1,0)
index>n+1 return 0
cnt==m return 1
cnt>m return 0
注意选到最后一个时,结束在n+1的位置,所以当index>n+1时返回,而不是在>n时返回
int res=0;
for(int i=0;i<=a[index];i++){
res=(res+dfs(index+1,cnt+i))%1000007;
}
代码:、
#include<iostream>
#include<cstring>
using namespace std;
int n,m;
int a[101];int dp[101][101];
int dfs(int index,int cnt){if(index>n+1)return 0;if(cnt==m){return 1;}if(cnt>m){return 0;}if(dp[index][cnt]){return dp[index][cnt];}int res=0;for(int i=0;i<=a[index];i++){res=(res+dfs(index+1,cnt+i))%1000007;}dp[index][cnt]=res;return res;
}
int main(){cin>>n>>m;for(int i=1;i<=n;i++){cin>>a[i];}cout<<dfs(1,0);}
【深度优先搜索】记忆化搜索 P1077 摆花相关推荐
- 动态规划+深度优先搜索+记忆化搜索(干货满满)
动态规划的定义 动态规划算法与分治法的思想类似,都是通过组合子问题的解来求原问题.我先来给大家介绍一下分治思想,分治思想就是把一个复杂的问题,分解为k个规模相同的子问题,如果还是无法解决,子问题又可以 ...
- 【蓝桥杯真题】地宫取宝(搜索-记忆化搜索详解)
链接 [蓝桥杯][2014年第五届真题]地宫取宝 题目描述 X 国王有一个地宫宝库.是 n x m 个格子的矩阵.每个格子放一件宝贝.每个宝贝贴着价值标签. 地宫的入口在左上角,出口在右下角. 小明被 ...
- 常用的递归算法:dfs(深度优先搜索),记忆化搜索,分治
递归值函数调用自身: 一.DFS的介绍 概念很简单,但是还是得了解一下,下面介绍的内容是重点 1. 图的DFS (1)先看一下vector是怎么建图的? vector<int> vecMa ...
- ZOJ - 2972 Hurdles of 110m(记忆化搜索/动态规划)
题目链接:点击查看 题目大意:给定n个点,以及m的最大体力值,共有三个状态通过每个点 快速模式:消耗时间t1,消耗体力f1 匀速模式:消耗时间t2 慢速模式:消耗时间t3,恢复体力f2 问:通过n个点 ...
- 山东省第五届省赛题C Colorful Cupcakes(五维数组+记忆化搜索)
在写题目之前先来介绍一下记忆化搜索. 算法上依然是搜索的流程,但是搜索到的一些解用动态规划那种思想和模式保存.一般来说,动态规划总要遍历所有的状态,而搜索可以排除一些无效的状态.最最最最最主要的是,搜 ...
- 记忆化搜索 Memorization Search
记忆化搜索 Memorization Search 什么是记忆化搜索 记忆化搜索函数的三个特点 记忆化搜索 vs 动态规划 三种适用于DP的场景 三种不适用于DP的场景 Examples: Leetc ...
- lcDFS1 深度优先遍历1[记忆化搜索]
1 深度优先遍历 最常见的优化: 1 记忆化搜索: 使用hash记录遍历起点对应的值,然后直接从hash中获得,避免重复计算 2 常见算法: 对于欧拉图和半欧拉图算欧拉路径:hierholzer算法 ...
- HDU2089 不要62【数位DP+记忆化搜索】
不要62 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- 搜索问题之状态空间搜索(状态压缩+记忆化搜索+ BFS)
文章目录 1. 前言 2. 问题举例(九宫格问题) 3. 问题分析 3.1 状态编码与解码 3.2 哈希映射 3.3 集合判重 4. 问题实现 推荐阅读 1. 前言 之前介绍的回溯法常用于 解空间的搜 ...
- 洛谷P1057 传球游戏(记忆化搜索)
点我进入题目 题目大意:n个小孩围一圈传球,每个人可以给左边的人或右边的人传球,1号小孩开始,一共传m次,请问有多少种可能的路径使球回到1号小孩. 输入输出:输入n,m,输出路径的数量. 数据范围:4 ...
最新文章
- 19 个行业观点:李开复谈20年后 AI,崔宝秋论开源之道,清华唐杰提认知图谱三要素...
- Text-CNN-文本分类-keras
- 一 在应用中升级u-boot、内核以及文件系统
- 关于合成的拷贝控制成员的一点问题
- 【CodeForces - 151D】Quantity of Strings (字符串问题,思维推导,有坑)
- mysql 主从复制结构配置
- 添加rabbitmq守护进程
- mysql 5.7.16安装与给远程连接权限
- hdoj--5621--KK's Point(简单数学)
- Qt 地址薄 (一) 界面设计
- C# 泛型LIST转DataTable
- java.lang.NoClassDefFoundError: com.android.tools.fd.runtime.AppInfo
- SQL注入—MYSQL基础语句(持续更新)附图
- 基于UDP协议的Java聊天室
- 银联权益信息API接口及管理平台解决方案相关介绍
- 工作中,掌握这四个说话技巧,再也不用担心自己不会说话
- python常用的案例
- 【科学的尽头是神学】祖师爷坐镇
- Cesium 源码分析 Material
- 各类测试工程师的面试秘籍