NYOJ-234-DP(吃土豆)
吃土豆
- 描述
-
Bean-eating is an interesting game, everyone owns an M*N matrix, which is filled with different qualities beans. Meantime, there is only one bean in any 1*1 grid. Now you want to eat the beans and collect the qualities, but everyone must obey by the following rules: if you eat the bean at the coordinate(x, y), you can’t eat the beans anyway at the coordinates listed (if exiting): (x, y-1), (x, y+1), and the both rows whose abscissas are x-1 and x+1.
Now, how much qualities can you eat and then get ?
- 输入
- There are a few cases. In each case, there are two integer M (row number) and N (column number). The next M lines each contain N integers, representing the qualities of the beans. We can make sure that the quality of bean isn't beyond 1000, and 1<=M,N<=500.
- 输出
- For each case, you just output the MAX qualities you can eat and then get.
- 样例输入
-
4 6 11 0 7 5 13 9 78 4 81 6 22 4 1 40 9 34 16 10 11 22 0 33 39 6
- 样例输出
-
242
-
#include<stdio.h> #include<string.h> #include<algorithm> using namespace std; int main(){ int a[550][550],dp[550]; int i,j,n,m,map; while(scanf("%d%d",&n,&m)!=EOF){ memset(dp,0,sizeof(dp)); memset(a,0,sizeof(a)); for(i=3; i<n+3; i++){ for(j=3; j<m+3; j++){ scanf("%d",&map); a[i][j]=max(a[i][j-2],a[i][j-3])+map; } } for(i=3; i<n+3; i++){ dp[i]=max(dp[i-2],dp[i-3])+max(a[i][m+1],a[i][m+2]); } printf("%d\n",max(dp[n+1],dp[n+2])); } return 0; }
还是这个好,比上面的占用内存少多了。。。值得学习
#include<stdio.h> int max(int m,int *a){ int i,f[550]; for(i=1;i<=m;i++) { if(i==1) f[i]=a[i]; else if(i==2) f[i]=a[i]>arr[i-1]?a[i]:a[i-1]; else { f[i]=(f[i-2]+a[i])>f[i-1]?f[i-2]+a[i]:f[i-1]; } } return f[m]; }//非递归推算法 /*int max(int m,int *a){ if(m==1)return a[1]; if(m==2)return a[2]=a[1]>a[2]?a[1]:a[2]; return max(m-2,a)+a[m]>max(m-1,a)?max(m-2,a)+a[m]:max(m-1,a); }*///递归分制算法 int main(){ int a[510],b[510],i,j,m,n; while(scanf("%d %d",&n,&m)==2) { for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { scanf("%d",&a[j]); } b[i]=max(m,a); } printf("%d\n",max(n,b)); } return 0; }
NYOJ-234-DP(吃土豆)相关推荐
- nyoj 234 吃土豆
描述 Bean-eating is an interesting game, everyone owns an M*N matrix, which is filled with different q ...
- 萌神吃土豆007 (zoj 3676 - 3685)
貌似就因为这名字我也要做啊... 总结一下今天题的给我们队的感觉..复杂度...不要不敢想.. A problem 给你n个人和T个询问,每个人有两个值pi和qi,pi表示你给他一瓶nomal可乐他给 ...
- NYOJ 745 dp
蚂蚁的难题(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 下雨了,下雨了,蚂蚁搬家了. 已知有n种食材需要搬走,这些食材从1到n依次排成了一个圈.小蚂蚁对每种食材 ...
- nyoj 作业题 dp
作业题 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 小白同学这学期有一门课程叫做<数值计算方法>,这是一门有效使用数字计算机求数学问题近似解的方法与过程, ...
- 吃了一辈子土豆,原来这么多吃法还治病,真要好好学学!
冬天到了,土豆是很多家庭过冬菜.当然,现在小编也一样吃着土豆在加班.但吃了一辈子土豆,但你知道吗?土豆就是最好的药,降血糖.控血压.防癌.治便秘样样行!你真该好好学学!1降压--生土豆榨汁降压多人不知 ...
- BZOJ3336: Uva10572 Black and White(插头Dp)
解题思路: 分类讨论即可. 代码(懒得删Debug了): 1 #include<map> 2 #include<cstdio> 3 #include<vector> ...
- β射线与哪些物质可产生较高的韧致辐射_辐射无所不在,香蕉土豆里都有?我们还能愉快生活吗?...
作为一枚受过系统科学教育,耳聪目明的当代年轻人,你是不是隔三差五被长辈亲友群里各种"XX有放射性,赶紧远离!"的科学谣言搞得哭笑不得?又或者,稍一不注意,长辈亲友就买回了各种号称黑 ...
- 小卡的土豆园开园了~
小卡新开了这个园子,会在这里种土豆,也会在这里挖土豆.土豆泥,土豆沙拉,青椒土豆丝--好吧,彻底跑题. 我们都是这个世界上微不足道的一枚小土豆.无论是那个在电脑前辛勤的码农还是那个蜷在沙发上狂看美剧的 ...
- 请试试看每天吃一碗;白头发不见了,给爸妈留
每天都坚持喝一碗,现在已经连续喝了三个多星期了,以前有好些白发的地方居然没有复发,而且现在一根也没有啊,我真的很开心.不仅白头发不见了,而且皮肤变白皙和光滑了好多,气色也比原来好了!好东西要大家分享, ...
- 哪些食物不能一起吃!!!!
吃是一门很大的学问,但是万物相生相克,各种美食之间也有相克的关系.如果将这些相冲撞的食物同食,不但不会得到美的享受,反而会损害身体. 真是不可不防! 下面是本人收集的一些进食讲究. 一.相克篇 芹菜与 ...
最新文章
- Go 学习笔记(19)— 函数(05)[如何触发 panic、触发 panic 延迟执行、panic 和 recover 的关系]
- master page頁面如何用js來做輸入驗證
- 数据蒋堂 | Hadoop中理论与工程的错位
- FPGA从Xilinx 的7系列学起(5)
- php会话(session)生命周期概念介绍及设置更改和回收
- 用时间分类能量再用能量分类时间
- linux shell 脚本 延时,linux下定时任务和延迟任务
- 策略模式(策略不同类,场景不同策略不同,环境策略分离组合)
- html 拼接onmouseout,HTML onmouseout事件用法及代码示例
- python电子相册制作软件_电子相册怎么做
- 总被业务当工具人,数据IT人怎么才能提高自己在公司的地位?
- cpython安装_Cython安装没有找到Python.h文件?
- Untitled555555555
- Java-Swing编程介绍
- 64位处理器与32位处理器的区别
- 重装系统怎么把计算机放桌面,电脑做系统怎样把桌面文件保留-电脑重装系统,桌面文件丢失怎么办?...
- 厉害,超乎想象,鹅厂程序员占比近 7 成
- matlab复化梯形公式误差,数值分析复化梯形公式,复化Simpson公式MATLAB程序
- 基于TPS(Thin Plate Spines)的STN网络的PyTorch实现
- 工业机器人三点工具定位法图文_手把手教你工业机器人三点示教法