猫和老鼠(4)


Sample Input
3 1
1 2 5
10 11 6
12 12 7
-1 -1
Sample Output
37

#include <bits/stdc++.h>
using namespace std;
const int maxn=110;
int dp[maxn][maxn];//dp[i][j]:从(i,j)开始能获得的最多奶酪
int g[maxn][maxn];
int n,k;
int dfs(int x,int y){if(dp[x][y]) return dp[x][y];dp[x][y]=g[x][y];for(int i=1; i<=k; i++){//横坐标正向走i步,且下一个洞奶酪比当前的多 if(x+i<=n-1&&g[x+i][y]>g[x][y]){dp[x][y]=max(dp[x][y],g[x][y]+dfs(x+i,y));}if(x-i>=0&&g[x-i][y]>g[x][y]){dp[x][y]=max(dp[x][y],g[x][y]+dfs(x-i,y));}if(y+i<=n-1&&g[x][y+i]>g[x][y]){dp[x][y]=max(dp[x][y],g[x][y]+dfs(x,y+i));}if(y-i>=0&&g[x][y-i]>g[x][y]){dp[x][y]=max(dp[x][y],g[x][y]+dfs(x,y-i));}}return dp[x][y];
}
int main()
{while(cin>>n>>k){if(n==-1&&k==-1) break;memset(dp,0,sizeof(dp)); //初始化 for(int i=0; i<n; i++){for(int j=0; j<n; j++){cin>>g[i][j];}}dfs(0,0);cout<<dp[0][0]<<endl;}return 0;
}
#include <bits/stdc++.h>
using namespace std;
const int maxn=110;
int dp[maxn][maxn];
int g[maxn][maxn];
int n,k;
int dx[]={1,0,-1,0},dy[]={0,1,0,-1};
int dfs(int x,int y){if(dp[x][y]) return dp[x][y];int ans=0;for(int i=0; i<4; i++){for(int j=1; j<=k; j++){//注意*jint nx=x+dx[i]*j,ny=y+dy[i]*j; if(0<=nx&&nx<=n-1&&0<=ny&&ny<=n-1&&g[nx][ny]>g[x][y]){ans=max(ans,dfs(nx,ny));}}}dp[x][y]=g[x][y]+ans;return dp[x][y];
}
int main()
{while(cin>>n>>k){if(n==-1&&k==-1) break;memset(dp,0,sizeof(dp));for(int i=0; i<n; i++){for(int j=0; j<n; j++){cin>>g[i][j];}}dfs(0,0);cout<<dp[0][0]<<endl;}return 0;
}

How many ways


Sample Input
1
6 6
4 5 6 6 4 3
2 2 3 1 7 2
1 1 4 6 2 7
5 8 4 3 9 5
7 6 6 2 1 5
3 1 1 3 7 2
Sample Output
3948

#include <bits/stdc++.h>
using namespace std;
const int maxn=110;
int g[maxn][maxn];
int n,m;
int dp[maxn][maxn];
int dfs(int x,int y){if(dp[x][y]!=-1) return dp[x][y];dp[x][y]=0;for(int i=0; i<=g[x][y]; i++){for(int j=0; j<=g[x][y]-i; j++){ //表示消耗那个格子的能量能到达的格子//这里可以拐弯,如果,x走一步,y方向就少走一步if(x+i>=1&&x+i<=n&&y+j>=0&&y+j<=m){dp[x][y]=(dp[x][y]+dfs(x+i,y+j))%10000;}}}return dp[x][y];
}
int main(){ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);int T; cin>>T;while(T--){cin>>n>>m;memset(dp,-1,sizeof(dp)); //必须初始化为-1,因为一个点可能为0,就不走了。如果初始为0,这个点就没法计算。for(int i=1; i<=n; i++){for(int j=1; j<=m; j++){cin>>g[i][j];}}//注意以下两操作的先后关系dp[n][m]=1;dfs(1,1);cout<<dp[1][1]<<endl;}return 0;
}

2021.04.14HDOJ相关推荐

  1. Russ Cox:这不是Go项目的标准布局 | Gopher Daily (2021.04.28) ʕ◔ϖ◔ʔ

    每日一谚:Profile before you decide something is performance critical. Go技术生态 Go web开发的当前状态 - https://tno ...

  2. Go webrtc项目pion创始人专访 | Gopher Daily (2021.04.07) ʕ◔ϖ◔ʔ

    每日一谚:Go makes error handling as important as any other code Go技术生态 go webrtc项目pion的创始人专访 - https://w ...

  3. 2021年 第12届 蓝桥杯 Java B组 省赛真题详解及小结【第1场省赛 2021.04.18】

    蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[题目下载.2013年(第4届)~2020年(第11届)] CSDN 蓝桥杯 专栏 2013年 第04届 蓝桥杯 Java B组 省赛真题详解及小结 ...

  4. 《安富莱嵌入式周报》第209期:2021.04.19--2021.04.25

    往期周报汇总地址:http://www.armbbs.cn/forum.php?mod=forumdisplay&fid=12&filter=typeid&typeid=104 ...

  5. 荣耀机试题 2021.04 ~05

    记录下最近面试的算法题 题目记得不是特别清楚了,大致描述. 一 2021.04.17荣耀机试 1 数组排序 题目描述:输入多个数字,按数字从小到大排序. 输入描述 多个整数,保证都在int范围内,用空 ...

  6. 2021.04.29删点成林

    2021.04.29删点成林 (题目来源:https://leetcode-cn.com/problems/delete-nodes-and-return-forest/) 题目描述 给出二叉树的根节 ...

  7. CST STUDIO SUITE 2021.04 SP4

    CST Studio Suite 2021.04 -发布说明 此补丁是一个推荐的更新,其中包括以下修正和改进. 许可 CST Studio Suite前端包括CST Studio Suite Bio ...

  8. 学习Go之前你应该知道的10件事 | Gopher Daily (2021.04.21) ʕ◔ϖ◔ʔ

    每日一谚:Don't use an interface if it's not clear how the interface makes the code better. Go技术生态 编写好的单元 ...

  9. 2021.04.08 线程和进程的使用

    2021.04.08 线程和进程的作用 直接通过Thread创建子线程 Thread(target=需要在子线程中调用的函数,args=(函数的实参列表)) from threading import ...

最新文章

  1. 发光二极管pcb封装图画法_五个方面剖析SIP封装工艺,看懂SIP封装真正用途
  2. ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
  3. python 网络编程 问题记录
  4. ES分组聚合:计算每个tag下的商品数量且某个filed包含指定关键字,分组,平均,每个tags下的平均价格,排序,指定范围区间
  5. 密码可逆不可逆选择_膝关节损伤不可逆!跑步要注意!
  6. 知识图谱应用合辑第一篇:多模态知识图谱的使用领域及最新进展
  7. 天地与我并存/万物与我为一 2
  8. 程序员可以只关心技术么?
  9. 修理牧场(哈夫曼树 )
  10. 《Adobe Dreamweaver CS6中文版经典教程》——第2课 HTML基础2.1 什么是HTML
  11. 百度 UEditor--自定义上传文件路径及读取文件
  12. 解决ubuntu 用anaconda 安装R 语言后,无法安装R语言package的问题
  13. SSH密匙对登录Linux服务器提示Permissions 0644 for ‘.pem’ are too open
  14. iOS第三方支付——银联支付
  15. pin limiting the speed
  16. 时间复杂度与大O记法的理解
  17. 微信小程序 java音乐播放器系统python php
  18. 如何培养忠诚客户以及培养忠诚客户的重要性
  19. 如何将「插件化」接入到项目之中?
  20. 我们要如何给自己的笔记本买内存条??

热门文章

  1. table control的修改/排序/删除功能实现实例
  2. SAP修改消息内容和报错类型(SE91和OBA5)
  3. 有关SAP中的批次管理
  4. 会计期间的开关(T-code:OB52)
  5. sap中二级品报工问题解决方案
  6. HANA全面上市,成为SAP史上用户数量增长最快的产品之一
  7. 元宇宙“众声喧哗”,三季度财报超预期的欢聚能否分一杯羹?
  8. 为什么说美团终将放弃打车?
  9. 内容创业时代,粉丝已死
  10. mysql查询2020年之前_2020年成人高考成绩如何查询?2020年成考录取结果如何查询?...