题意:FatMouse在一个N*N方格上找吃的,每一个点(x,y)有一些吃的,FatMouse从(0,0)的出发去找吃的。每次最多走k步,他走过的位置能够吃掉吃的。保证吃的数量在0-100。规定他仅仅能水平或者垂直走,每走一步。下一步吃的数量须要大于此刻所在位置,问FatMouse最多能够吃多少东西。

须要对步数进行扩展。

#include<iostream>
using namespace std;#define N 101
#define max(a,b) ((a)>(b)?(a):(b))
int dp[N][N],map[N][N];
int k,n;
int dir[4][2]={{1,0},{0,1},{-1,0},{0,-1}};bool ok(int x,int y)         //推断边界
{return x>=0 && y>=0 && x<n && y<n;
}int dfs(int x,int y)              //记忆化搜索
{int i,j,max=0,xt,yt,tmp;if(dp[x][y]>0)return dp[x][y];for(i=0;i<4;i++)for(j=1;j<=k;j++){xt=dir[i][0]*j+x;yt=dir[i][1]*j+y;if(ok(xt,yt)&&map[x][y]<map[xt][yt]){tmp=dfs(xt,yt);if(tmp>max)            //找到最大的max=tmp;}}dp[x][y]=max+map[x][y];return dp[x][y];
}int main()
{int i,j;while(scanf("%d%d",&n,&k)==2 && k!=-1 && n!=-1){for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",&map[i][j]);memset(dp,0,sizeof(dp));cout<<dfs(0,0)<<endl;}return 0;
}

转载于:https://www.cnblogs.com/yxwkf/p/5258362.html

HDU ACM 1078 FatMouse and Cheese 记忆化+DFS相关推荐

  1. HDUOJ 1078 FatMouse and Cheese

    HDUOJ 1078 FatMouse and Cheese 题目链接 Problem Description FatMouse has stored some cheese in a city. T ...

  2. 深度优先搜索之记忆化dfs

    文章目录 前言 朴素dfs的求解思路 记忆化dfs的求解思路 将整数按权重排序 题目描述 解题思路 朴素dfs 记忆化dfs 小结 矩阵中的最长递增路径 题目描述 解题思路 朴素dfs 记忆化dfs ...

  3. HDU 1078 FatMouse and Cheese【记忆化搜索】

    <题目链接> 题目大意: 给你一个n*n的矩阵,每个矩阵上有相应数量的奶酪,老鼠一次最多走K步,且每次只能横着走或者竖着走,并且每一次停留位置上的奶酪数一定要多余它刚才的奶酪数,求这只老鼠 ...

  4. HDU - 1078 FatMouse and Cheese

    再谈记忆化搜索 题目描述: FatMouse has stored some cheese in a city. The city can be considered as a square grid ...

  5. J - 数塔 HDU - 2084(深搜,记忆化搜索+)

    在讲述DP算法的时候,一个经典的例子就是数塔问题,它是这样描述的: 有如下所示的数塔,要求从顶层走到底层,若每一步只能走到相邻的结点,则经过的结点的数字之和最大是多少? 已经告诉你了,这是个DP的题目 ...

  6. 胖老鼠和奶酪(记忆化dfs)

    问题描述 FatMouse在一个城市中存储了一些奶酪.可以将城市视为尺寸为n的正方形网格:每个网格位置都标记为(p,q),其中0 <= p <n和0 <= q <n.在每个网格 ...

  7. P1983-车站分级【图论,记忆化dfs,构图】

    正题 题目链接:https://www.luogu.org/problemnew/show/P1983 题目大意 一个辆车会一个一个值xxx,如果等级大于等于xxx的车站都会停靠(包括起点和终点).给 ...

  8. hdu 1078 FatMouse and Cheese(记忆化搜索)

    题意:一个n*n的矩阵,每个点有若干块点心,小老鼠开始在左上角,每次最多往前走k步,且停留的点的点心数比上一次停留的点大,输出最大的i点心数 分析:停留的点数目必须比上次大,形成一个序,必定是一个DA ...

  9. ACM DP FatMouse and Cheese

    题目: FatMouse has stored some cheese in a city. The city can be considered as a square grid of dimens ...

最新文章

  1. Python之两个列表一起打乱
  2. 批量提取 caffe 特征 (python, C++, Matlab)(待续)
  3. 【翻译】.NET 5 Preview8发布
  4. 自己动手写处理器之第一阶段(3)——MIPS32指令集架构简单介绍
  5. uartz Spring与Spring Task总结
  6. java poi合并单元格后内容无法显示
  7. 网站整体策划书的撰写
  8. 财务报表java_财务报表识别
  9. H5唤起web地图导航
  10. 案例分享 | 数智化升级:红蜻蜓的转型之路(下)
  11. Self6D: Self-Supervised Monocular 6D Object Pose Estimation论文翻译
  12. 14. echarts画双y轴
  13. Flash Loader Demonstrator无响应怎么办?
  14. prometheus-adapter自定义hpa
  15. oracle视图大全,oracle常见视图汇总
  16. Chrome 89 新功能一览,性能提升明显,大量 DevTools 新特性!
  17. i.php,iPHP简介_开始使用_iPHP框架文档iCMS_给我一套程序,我能搅动互联网
  18. 峰值检波电路的作用和原理_最简单的峰值检波电路
  19. 如何用C语言来实现——五子棋游戏
  20. App Inventor 使用BLE发送一串十六进制数据

热门文章

  1. 【laravel5.4 + TP5.0】hasOne和belongsTo的区别
  2. 2.12日递推专题第一题
  3. Android攻城狮SurfaceView
  4. zookeeper+kafka集群安装之中的一个
  5. JMeter学习(七)聚合报告之 90% Line 正确理解
  6. Kenshin Cui's Blog
  7. 2015年必火的五个Html5移动开发工具推荐
  8. 晒一下MAC下终端颜色配置
  9. 浅谈PHP自动化代码审计技术
  10. MySQL Group Replication-MGR集群简介