最近一直在写dp,然后别的就啥也不管了(wtcl),很明显的最简单的搜索题竟然卡了,一开始的思路是每一个格子都只能是从四周的格子转化过来的,只要找到四周最大的那个那么dp[i][j]=max+a[i][j],但是无法确定四周的状态,不知道i,j该怎么开始,所以就卡了,竟然不往搜索上去想,emmmm,希望记住一下,看cls的ppt,说刷1000道poj的傻逼题还是个傻逼,但是现在连傻逼题都写不出来。

 1 #include <iostream>
 2 #include <cstring>
 3 #include <string>
 4 #include <map>
 5 #include <set>
 6 #include <algorithm>
 7 #include <fstream>
 8 #include <cstdio>
 9 #include <cmath>
10 #include <stack>
11 #include <queue>
12 using namespace std;
13 typedef long long ll;
14 int n,k;
15 int dp[1000+5][1000+5];
16 int a[1000+5][1000+5];
17 int d[][2]={{0,1},{0,-1},{1,0},{-1,0}};
18 int dfs(int x,int y)
19 {
20     int maxn=0;
21     if(dp[x][y]!=0) return dp[x][y];
22     for(int i=0;i<=3;i++)
23         {
24             for(int j=1;j<=k;j++)
25             {
26                 int dx=x+d[i][0]*j;
27                 int dy=y+d[i][1]*j;
28                 if(dx>=1&&dx<=n&&dx>=1&&dy<=n&&a[x][y]<a[dx][dy])
29                 {
30                     int t=dfs(dx,dy);
31                     if(t>maxn)
32                         maxn=t;
33                 }
34             }
35         }
36     dp[x][y]=maxn+a[x][y];
37     return dp[x][y];
38 }
39
40
41 int main()
42 {
43     while(cin>>n>>k)
44     {
45         if(n==-1&&k==-1) break;
46         for(int i=1;i<=n;i++)
47         {
48             for(int j=1;j<=n;j++)
49                 cin>>a[i][j];
50         }
51         memset(dp,0,sizeof(dp));
52         cout <<dfs(1,1)<<endl;
53     }
54     return 0;
55 }

转载于:https://www.cnblogs.com/Msmw/p/10353565.html

K - FatMouse and Cheese相关推荐

  1. 动态规划训练21 [FatMouse and Cheese HDU - 1078 ]

    FatMouse and Cheese HDU - 1078 这道题需要说一说,定义dp[x][y]表示从点(x,y)出发,每次走不超过k步,所能吃到的最大量. 有点难搞的是,这里递归的顺序不好确定, ...

  2. zoj 1107 FatMouse and Cheese 逆向动态规划

    FatMouse and Cheese 开始试着用深度搜索做,超时了(对于时间复杂度没有概念) 这道题用动态规划.如果用自顶向下的方法,我们不知道结尾的是哪个点,所以不方便用. 如果我们采用自下而上的 ...

  3. HDUOJ 1078 FatMouse and Cheese

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

  4. 记忆化搜索,FatMouse and Cheese

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1107 http://acm.hdu.edu.cn/showpro ...

  5. FatMouse and Cheese HDU - 1078(记忆化搜索入门模板)

    题意: n * n的正方形格子(每个格子均放了奶酪),老鼠从(0,0)开始,每次最多移动k步,可以选择上下左右四个方向移动,下一个移动点奶酪块数量必须要大于当前点. 整理模板ing- 题目: FatM ...

  6. 【HDU - 1078】FatMouse and Cheese (记忆化搜索dp)

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

  7. ACM DP FatMouse and Cheese

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

  8. HDU - 1078 FatMouse and Cheese

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

  9. HDU ACM 1078 FatMouse and Cheese 记忆化+DFS

    题意:FatMouse在一个N*N方格上找吃的,每一个点(x,y)有一些吃的,FatMouse从(0,0)的出发去找吃的.每次最多走k步,他走过的位置能够吃掉吃的.保证吃的数量在0-100.规定他仅仅 ...

最新文章

  1. 转:RemObjects SDK 简介
  2. 为什么面包板不能够做射频电路实验?
  3. DIV CSS display (block none inline)属性的用法教程
  4. java面试第十四天
  5. Logistic Regression 之基础知识准备
  6. 二叉搜索树的查询操作《算法导论》12.2
  7. 安卓四大组件之二广播
  8. scala从集合中提取不重复的元素
  9. 工作利用NUnit进行调试
  10. ModuleNotFoundError: No module named 'cv2'
  11. Ubuntu配置安装NFS服务器
  12. HTTP Status 500 - javax.servlet.ServletException: File [/head.jsp] not found
  13. 由浅入深CAS,小白也能与BAT面试官对线
  14. 大数据平台解决方案(PPT)
  15. 无人机+AI人工智能可以实现哪些领域的场景应用?
  16. Python安装shapely包出现WindowsError: [Error 126]解决方案
  17. 中国羽绒服市场深度调查研究报告
  18. php 验证码一直不对,php验证码错误
  19. 创建相册,批量删除,图片预览,上传图片
  20. PSO算法求解全局最大值

热门文章

  1. (转)测试用例的设计方法(全)之二 错误推断、因果图
  2. SRP:The Single-Responsibility Principle
  3. 谷歌体三维捕捉新突破:实现后期任意照明修改
  4. Facebook表示将不会默认开启人脸识别功能,被罚怕了?
  5. 为什么要学C语言及C语言存在的意义,新手经常犹豫学不学C语言
  6. 计算是计算机科学独有的方法,大学计算机基础教学中的计算思维培养.doc
  7. HTTP 方法:GET 对比 POST
  8. hashmap为什么容量是2的n次方
  9. 回文java_回文 Java
  10. java runtime environment 官网_Java Runtime Environment SE Development Kit