Henry捡钱

(money.pas/c/cpp)

来源:Dream Team邀请赛

【问题描述】

最近,Henry由于失恋(被某大牛甩掉!)心情很是郁闷.所以,他去了大牛家,寻求Michael大牛的帮助,让他尽快从失恋的痛苦中解脱出来.Michael大牛知道Henry是很爱钱的,所以他是费尽脑水,绞尽脑汁想出了一个有趣的游戏,帮助Henry.....

Michael感觉自己简直是个天才(我们从不这么认为),就把这个游戏取名为:Henry拣钱.为了帮助更多的人采用这种方法早日脱离失恋之苦,Michael特地选在这次DT比赛中把游戏介绍给大家...(大家鼓掌!!!)

其实,这个游戏相当垃圾,目的就是为了满足Henry这种具有强烈好钱的心理的人.游戏是这样的:Michael首先找到了一块方形的土地,面积为m*n(米^2).然后他将土地划分为一平方米大小的方形小格.Michael在每个格子下都埋有钱(用非负数s表示,表示人民币的价值为s)和炸弹(用负数s表示,表示Henry挖出该方格下的东西会花掉s的钱去看病,医炸弹炸伤的伤口)...游戏的要求就是让Henry从一侧的中间列出发,按照下图的5种方式前进(前进最大宽度为5),不能越出方格.他每到一个格子,必定要取走其下相应的东西.直到到达土地的另一侧,游戏结束.不用说也知道,Henry肯定想得到最多的人民币.所以他偷窥了,Michael埋钱的全过程,绘成了一张距阵图.由于他自己手动找会很麻烦,于是他就找到了学习编程的你.请给帮他找出,最大人民币价值.

拣钱路线规则(只有5个方向,如下图):

H为Henry的出发点,每组数据的出发点都是最后一行的中间位置!

(前方5个格子为当前可以到达的)

【输入文件】

第一行为m n.(n为奇数),入口点在最后一行的中间

接下来为m*n的数字距阵.

共有m行,每行n个数字.数字间用空格隔开.代表该格子下是钱或炸弹.

为了方便Henry清算,数字全是整数.

【输出文件】

一个数,为你所找出的最大人民币价值.

【输入样例】

6 7

16 4 3 12 6 0 3

4 -5 6 7 0 0 2

6 0 -1 -2 3 6 8

5 3 4 0 0 -2 7

-1 7 4 0 7 -5 6

0 -1 3 4 12 4 2

【输出样例】

51

【数据范围】

Nand M<=200.

结果都在longint范围内

#include #include int opt[201][201]={0};
int a[201][201]={0};
int max(int a,int b)
{
if(a>b)
{
return a;
}
else
return b;
}
int max(int a,int b,int c)
{
a=max(a,b);
a=max(a,c);
returna;
}
int max(int a,int b,int c,int d)
{
a=max(a,b);
a=max(a,c);
a=max(a,d);
return a;
}
int max(int a,int b,int c,int d,int e)
{
a=max(a,b);
a=max(a,c);
a=max(a,d);
a=max(a,e);
return a;
}
int main()
{
int m,n;
scanf("%d%d",&m,&n);
int i,j;
for(i=m;i>=1;i--)
{
for(j=n;j>=1;j--)
{
scanf("%d",&a[i][j]);
}
}
memset(opt,0,sizeof(opt));
int l=(n-5)/2;
int n1=n/2+1;
for(i=1;i<=l;i++)
{
for(j=n1+2+i;j<=n;j++)
{
a[i][j]=-9999;
}
for(j=1;j<=n1-2-i;j++)
{
a[i][j]=-9999;
}
}
for(i=1;i<=m;i++)
{
for(j=1;j<=n;j++)
{
printf("%d",a[i][j]);
}
printf("\n");
}
for(i=1;i<=m;i++)
{
for(j=1;j<=n;j++)
{
if(j==1)
{
opt[i][j]=max(opt[i-1][j],opt[i-1][j+1],opt[i-1][j+2])+a[i][j];
}
if(j==2)
{
opt[i][j]=max(opt[i-1][j-1],opt[i-1][j],opt[i-1][j+1],opt[i-1][j+2])+a[i][j];
}
if(j==n)
{
opt[i][j]=max(opt[i-1][j],opt[i-1][j-1],opt[i-1][j-2])+a[i][j];
}
if(j==n-1)
{
opt[i][j]=max(opt[i-1][j+1],opt[i-1][j],opt[i-1][j-1],opt[i-1][j-2])+a[i][j];
}
else if (j>=3&&j<=n-2)
{
opt[i][j]=max(opt[i-1][j-2],opt[i-1][j-1],opt[i-1][j],opt[i-1][j+1],opt[i-1][j+2])+a[i][j];
}
}
}
int max=0;
for(i=1;i<=n;i++)
{
if (max


Henry捡钱_DP相关推荐

  1. Henry捡钱 Java 动态规划

    背景描述: 最近,Henry由于失恋(被某大牛甩掉!)心情很是郁闷.所以,他去了大牛家,寻求Michael大牛的帮助,让他尽快从失恋的痛苦中解脱出来.Michael大牛知道Henry是很爱钱的,所以他 ...

  2. 11th 【棋盘dp 动态规划】捡钱

    捡钱 背景描述: 最近,Henry由于失恋(被某大牛甩掉!)心情很是郁闷.所以,他去了大牛家,寻求Michael大牛的帮助,让他尽快从失恋的痛苦中解脱出来.Michael大牛知道Henry是很爱钱的, ...

  3. 实现财务自由 之 捡钱神器——打新债(申购新债/可转债打新),让你一天就能赚 20%(如何打新债,如何提高打新中签率)

    实现财务自由 之 打新债(申购新债/可转债打新),让你一天就能赚 20%(如何打新债,如何提高打新中签率) 目录 实现财务自由 之 打新债(申购新债/可转债打新),让你一天就能赚 20%(如何打新债, ...

  4. [Dream Team邀请赛]----Money Henry拣钱

    数据最后来-我先写题解 Henry拣钱(money.pas/c/cpp) 背景描述: 最近,Henry 由于失恋(被某大牛甩掉!)心情很是郁闷.所以,他去了大牛家,寻求 Michael 大 牛的帮助, ...

  5. 通过确定性机会“捡钱”

    通过确定性机会"捡钱" 作者:王三金 主要是对于投资股市的一些确定性机会现象的一点思考和记录. 其实投资是有主线和逻辑的.我们可以通过行业,展现一下市场的基本运行规律. 从利率讲起 ...

  6. 理财实践之打新债(捡钱神器)

    文章目录 1:什么是打新债 2: 什么是可转债 3:打新债需要什么条件 4:打新债的收益如何 5:打债有什么风险呢 6:如何避免破发呢 7:如何查询新上市的可转债有破发风险呢 8:打新债的操作步骤 9 ...

  7. 小白也可以科学的在股市里捡钱

    没错,说的就是打新债. 打新债是非常适合新手投资的方式. 本篇文章从数据分析的角度,聊一聊打新债稳赚不赔的科学性. 本文数据样本:自2015年来184个可转债数据(截止2019年11月15日浦发转债) ...

  8. 盘点程序员可以在上面捡钱的共享经济产品

    2014年8月1日,我在博客上发表了一篇题为"技术问答网站与论坛为什么半死不活"的文章,讨论技术问答的现状.那篇文章被推荐到CSDN首页,被很多人看到,关注度较高,也有很多人在文后 ...

  9. 现在的钱真的那么容易挣了吗?

    不知道从什么时候开始,小红书啊,抖音里啊,知乎里啊各种各样教别人挣钱的方式,什么日赚300不是梦啊,或者要么就是各种各样的教导别人如何挣钱的?难道我们真是的去捡钱了?其实不然里面都是充斥着各种骗局,要 ...

最新文章

  1. 惊:FastThreadLocal吞吐量居然是ThreadLocal的3倍!!!
  2. OSGI动态加载删除Service bundle
  3. Linux守护进程的创建(结合nginx框架)
  4. C语言电话薄登录系统,求助 哈稀表编电话薄程序(c语言) 算法
  5. idea debug异常关闭 Error running 'Tomcat8': Unable to open debugger port (127.0.0.1:50168): java.net.Soc
  6. 重提URL Rewrite(4):不同级别URL Rewrite的一些细节与特点
  7. 打包,VS 之 InstallShield Limited Edition for Visual Studio 2015 图文教程
  8. 软件测试理论基础知识
  9. 使用Python批量抓取单词发音
  10. Docker搭建酷q机器人
  11. 开学季Web渗透测试工程师精英班“第5期”来袭,加入即永久观看!
  12. 艾肯声卡安装调试方法【必看】
  13. 观察者模式与推拉模型
  14. mysql怎么写外键支持级联删除_MySQL外键级联删除不起作用,完全难倒
  15. 小朋友你是否有很多问号图_小朋友你是否有很多问号表情包
  16. CP15 中的寄存器
  17. 网络流-割的概念以及定理
  18. MySQL、MongoDB、Redis 数据库之间的区别
  19. 客户机操作系统已禁用cpu_CPU硬件辅助虚拟化技术
  20. VS工程中常用路径宏定义表示

热门文章

  1. 一次惊心动魄的服务器误删文件恢复过程
  2. 教你使用内嵌chatGPT的新必应(bing)
  3. (全网最详细!)bzoj 2548 灭鼠行动 模拟 解题报告
  4. ubuntu-中文语言包无法下载
  5. Pointnet++代码详解(三):query_ball_point函数
  6. 『VQA认知』如何理解Bias?
  7. 调试JavaScript/VB Script脚本程序(Wscript篇)
  8. 别人的18岁,恐怕会碾压你的38岁
  9. 【github】Support for password authentication was removed on August 13,2021.
  10. Sqlserver alter增加列后列名无效