Problem Description
穿过幽谷意味着离大魔王lemon已经无限接近了!
可谁能想到,yifenfei在斩杀了一些虾兵蟹将后,却再次面临命运大迷宫的考验,这是魔王lemon设下的又一个机关。要知道,不论何人,若在迷宫中被困1小时以上,则必死无疑!
可怜的yifenfei为了去救MM,义无返顾地跳进了迷宫。让我们一起帮帮执着的他吧!
命运大迷宫可以看成是一个两维的方格阵列,如下图所示:
 
yifenfei一开始在左上角,目的当然是到达右下角的大魔王所在地。迷宫的每一个格子都受到幸运女神眷恋或者痛苦魔王的诅咒,所以每个格子都对应一个值,走到那里便自动得到了对应的值。
现在规定yifenfei只能向右或者向下走,向下一次只能走一格。但是如果向右走,则每次可以走一格或者走到该行的列数是当前所在列数倍数的格子,即:如果当前格子是(x,y),下一步可以是(x+1,y),(x,y+1)或者(x,y*k) 其中k>1。 
为了能够最大把握的消灭魔王lemon,yifenfei希望能够在这个命运大迷宫中得到最大的幸运值。
Input
输入数据首先是一个整数C,表示测试数据的组数。
每组测试数据的第一行是两个整数n,m,分别表示行数和列数(1<=n<=20,10<=m<=1000);
接着是n行数据,每行包含m个整数,表示n行m列的格子对应的幸运值K ( |k|<100 )。
Output
请对应每组测试数据输出一个整数,表示yifenfei可以得到的最大幸运值。
Sample Input
1
3 8
9 10 10 10 10 -10 10 10
10 -11 -1 0 2 11 10 -20
-11 -11 10 11 2 10 -10 -10

Sample Output
52

思路:BFS求最优.....水过....

AC代码:

#include <iostream>
#include <queue>
using namespace std;typedef long long LL;
#define max(a,b) (a>b?a:b)
#define min(a,b) (a<b?a:b)struct XY
{int x,y;
};queue<XY> q;int main()
{   int T;cin>>T;int n,m;int map[21][1005],yuan[21][1005];bool flag[21][1005];while(T--){cin>>n>>m;for(int i=1;i<=n;++i)for(int j=1;j<=m;++j){cin>>map[i][j];flag[i][j]=false;yuan[i][j]=map[i][j];}XY tmp;tmp.x=1;tmp.y=1;q.push(tmp);int x,y;while(!q.empty()){tmp=q.front();x=tmp.x; y=tmp.y;q.pop();if(x<n)//向下{tmp.x=x+1; tmp.y=y;if(!flag[x+1][y]){flag[x+1][y]=true;map[x+1][y]+=map[x][y];q.push(tmp);}else if(yuan[x+1][y]+map[x][y]>map[x+1][y]){map[x+1][y]=yuan[x+1][y]+map[x][y];q.push(tmp);}}if(y<m)//向右一步 {tmp.x=x; tmp.y=y+1;if(!flag[x][y+1]){flag[x][y+1]=true;map[x][y+1]+=map[x][y];q.push(tmp);}else if(yuan[x][y+1]+map[x][y]>map[x][y+1]){map[x][y+1]=yuan[x][y+1]+map[x][y];q.push(tmp);}}for(int i=2;i*y<=m;++i){tmp.x=x; tmp.y=i*y;if(!flag[x][tmp.y]){flag[x][tmp.y]=true;map[x][tmp.y]+=map[x][y];q.push(tmp);}else if(yuan[x][tmp.y]+map[x][y]>map[x][tmp.y]){map[x][tmp.y]=yuan[x][tmp.y]+map[x][y];q.push(tmp);}}}cout<<map[n][m]<<endl;}return 0;
}

HDU-2571 命运相关推荐

  1. HDU 2571 命运

    命运 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  2. hdu 2571 命运

    命运 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  3. 【HDU - 2571】 命运(记忆化搜索)

    题干: 穿过幽谷意味着离大魔王lemon已经无限接近了!  可谁能想到,yifenfei在斩杀了一些虾兵蟹将后,却再次面临命运大迷宫的考验,这是魔王lemon设下的又一个机关.要知道,不论何人,若在迷 ...

  4. 命运(HDU 2571 简单动态规划)

    命运 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  5. HDU - 2571 

    穿过幽谷意味着离大魔王lemon已经无限接近了! 可谁能想到,yifenfei在斩杀了一些虾兵蟹将后,却再次面临命运大迷宫的考验,这是魔王lemon设下的又一个机关.要知道,不论何人,若在迷宫中被困1 ...

  6. 杭电2571 命运

    命运 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  7. HDU 2571(dp)题解

    命运 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  8. selenium 页面经常改变元素_selenium用jquery改变元素属性

    一.jQuery 语法 jQuery 语法是通过选取 HTML 元素,并对选取的元素执行某些操作. 1.基础语法: $(selector).action() 选择符(selector)即," ...

  9. 个人DP训练(基础版)

    题目链接    hdu 2955 Robberies 01背包,转化为求被抓的概率. 题目链接       hdu   1864  最大报销额 01背包,每张发票的总额为容量和价值,注意预处理数据,对 ...

  10. sdkd2019.3.20训练题目

    A. HDU 2046 第一次看到这个,题目,想到的是动态规划,真是思维僵化了,总想套,而如果仔细想它的构成方法,就会很容易想到汉诺塔的那个想法,面对复杂的问题,先思考距离胜利一步之遥的时候要怎么解决 ...

最新文章

  1. HTTP referer
  2. ICRA 2021自动驾驶相关论文汇总 | 科研党看过来,全文干货
  3. 人工智能AI实战100讲(二)-自动驾驶传感器之激光雷达(三)主流车厂激光雷达的选择及布局
  4. 推荐一个国外SaaS产品-Olark
  5. Python字典类型内部做判断赋值
  6. MySQL基础篇(03):系统和自定义函数总结,触发器使用详解
  7. oracle 7 客户端,windows 7环境下配置oracle 11g 客户端
  8. 去掉IE的图片工具条
  9. .net导出为powerpoint的一些参考代码
  10. JSP 中 forward 转发 和 sendRedirect 重定向的区别
  11. RoboWare的安装与使用
  12. C语言基础练习100--008(输出国际象棋棋盘)
  13. 计算机硬盘应该什么格式化,硬盘应该格式化成哪种格式为好?
  14. C4D模型工具—反转法线
  15. 《英雄无敌3》的一个独立的扩展版-英雄无敌3死亡阴影下载
  16. MATLAB在线编辑网站及使用教程
  17. android监听apk安装成功,如何监听apk安装完成
  18. win7系统没有诊断策略服务器,win7旗舰版64位系统诊断策略服务未运行的解决方法...
  19. CCIE-组播防环机制RPF
  20. 如何组建LoRaWAN无线网络以传输温度数据

热门文章

  1. C# Stopwatch 计算程序所有时间
  2. 如何设置好看的form表单样式_网页开发之表格用法,该如何制作?
  3. 微机原理和计算机组成原理一样吗_计算机/软工408考研---组成原理+OS重难点
  4. CBC TIniFile类以及ExtractFilePath
  5. swift 电子书阅读器
  6. Android apk反编译学习【天天酷跑】
  7. 2022年新出的Python学习神器(附源码)
  8. iOS_Memory Leak 内存泄露治理
  9. 辐射为啥计算机发展差,辐射危机!为什么总听人说电脑有辐射,那么辐射到底是什么东西?...
  10. wince6.0开发工具的安装