命运

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 7198    Accepted Submission(s): 2526

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
Author
yifenfei
Source
ACM程序设计期末考试081230
Recommend
yifenfei
思路:注意初始化,因为他们都可以为负数
代码:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
using namespace std;
int dp[40][1100];
int map[40][1100];
int n,m;
int t;
int a,b;
int maxn;
int main()
{
//freopen("in.txt","r",stdin);
scanf("%d",&t);
while(t --)
{
scanf("%d%d",&n,&m);
for(int i = 1;i <= n;i ++)
for(int j = 1;j <= m;j ++)
scanf("%d",&map[i][j]);
memset(dp,0,sizeof(dp));
dp[1][1] = map[1][1];
int j;
for(int i = 1;i <= n;i ++)
{
if(i == 1)
j = 2;
else
j = 1;
for(;j <= m;j ++)
{
maxn = -100000;
if(dp[i][j - 1] > maxn && j - 1 >= 1)
maxn = dp[i][j - 1];
if(dp[i - 1][j] > maxn && i - 1 >= 1)
maxn = dp[i - 1][j];
for(int k = 1;k < j / 2 + 1;k ++)
{
if(j % k == 0)
{
if(dp[i][k] > maxn)
maxn = dp[i][k];
}
else
continue;
}
dp[i][j] = maxn + map[i][j];
}
}
printf("%d\n",dp[n][m]);
}
return 0;
}

转载于:https://www.cnblogs.com/GODLIKEING/p/3330248.html

HDU 2571 命运相关推荐

  1. hdu 2571 命运

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

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

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

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

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

  4. HDU - 2571 

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

  5. 杭电2571 命运

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

  6. HDU 2571(dp)题解

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

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

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

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

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

  9. sdkd2019.3.20训练题目

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

最新文章

  1. 关于Unity中从服务器下载资源压缩包AssetBundle的步骤
  2. 深度学习笔记:卷积神经网络的Tensorflow实现
  3. 编译安装Centos7.2+Apache2.4.25+PHP7.2.10+Mysql5.6.16
  4. 花5000元买2天训练营,年轻人正在「高价买觉睡」
  5. python itchat 无法登录_项目分享|5步教你用Python制作朋友圈个性签名
  6. 这款颜值高的到底是剃须刀还是充电宝,这么黑科技?
  7. bloom-generate 打包 ros 版本 noetic 的包及报 /usr/bin/ld: 找不到 -lpthreads与undefined reference pthread_create
  8. SAP案例教程FIAA固定资产后台配置
  9. PDF转HTML常用方法分享
  10. Word OpenXML常用标签openxml标签
  11. 【SpringCloud】Gateway新一代网关
  12. docker + nginx + uwsgi + ubuntu部署django项目
  13. 32位与64位CPU字长
  14. 北京内推 | 秘塔科技招聘NLP算法工程师(社招校招可转正实习)
  15. 给定一个仅包含大小写字母和空格 ‘ ‘ 的字符串 s,
  16. Wifi流程机制分析:WiFi的启动
  17. 基于深度学习智能问答笔记
  18. 什么是 HTTP Headers?
  19. web前端新手入门:中国互联网的发展史
  20. docker修改服务器参数怎么办,Docker(32)- 如何修改 docker 容器的启动参数

热门文章

  1. 企业参加HVV的防守思路总结
  2. 手把手教你做挖矿应急响应
  3. 远程桌面提示:身份验证错误 要求的函数不受支持
  4. 将一个数字划分成树状
  5. 正则表达式的一点说明
  6. AlexNet网络构建与训练
  7. 用 Mahout 和 Elasticsearch 实现推荐系统
  8. JsonUtils.java
  9. mxGraph实现按住ctrl键盘拖动图形实现复制图形功能
  10. 怎样在Ubuntu系统安装可用的QQ