题目链接:http://acm.hust.edu.cn/vjudge/contest/121396#problem/F

http://lightoj.com/volume_showproblem.php?problem=1004

密码:acm

分析:求从上往下路径的最大权值。

 
解题思路:数字三角形的变形,把菱形分为上下两部分求即可。dp[i][j]表示路径到第i行第j个点的最大权值和。
 
 

*:

 上:dp[i][j]=max(dp[i-1][j], dp[i-1][j-1])+maps[i][j];
 下:dp[i][j]=max(dp[i-1][j], dp[i-1][j+1])+maps[i][j];
 
Sample Input

Sample Output
Case :
Case :

*********************************************************

 #include<stdio.h>
#include<math.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream> using namespace std; #define M 10200
#define N 1500///N 开大了就MLE了,~~~~(>_<)~~~~ int dp[N][N],maps[N][N]; int main()
{
int n,i,j, T, k=; scanf("%d", &T); while(T--)
{
scanf("%d", &n); memset(dp, ,sizeof(dp));
memset(maps,,sizeof(maps)); for(i=;i<=n;i++)
for(j=;j<=i;j++)
scanf("%d",&maps[i][j]); for(i=n+;i<n*;i++)
for(j=;j<=n*-i;j++)
scanf("%d", &maps[i][j]); dp[][]=maps[][]; for(i=;i<=n;i++)
for(j=;j<=i;j++)
dp[i][j]=max(dp[i-][j], dp[i-][j-])+maps[i][j];
///上半部分从上到下
/*{
dp[i+1][j]=max(dp[i+1][j], dp[i][j]+maps[i+1][j]);
dp[i+1][j+1]=max(dp[i+1][j+1],dp[i][j]+maps[i+1][j+1]);
}*/ for(i=n+;i<n*;i++)
for(j=;j<=n*-i;j++)
dp[i][j]=max(dp[i-][j], dp[i-][j+])+maps[i][j];
///下半部分从上到下 printf("Case %d: %d\n", k++, dp[n*-][]);
}
return ;
}

Lightoj 1004 - Monkey Banana Problem的更多相关文章

  1. Light OJ 1004 - Monkey Banana Problem(DP)

    题目大意: 给你一菱形的数字阵,问从最上面走到最下面所能获得的最大值是多少? #include<cstdio> #include<cstring> #include<io ...

  2. Light oj-1004 - Monkey Banana Problem,数字三角形的变形版~

                                                                                                     100 ...

  3. Monkey Banana Problem LightOJ - 1004

    Monkey Banana Problem LightOJ - 1004 错误记录: 1.数组开小2.每组数据数组没有清空 #include<cstdio> #include<cst ...

  4. (LightOJ 1004) Monkey Banana Problem 简单dp

    You are in the world of mathematics to solve the great "Monkey Banana Problem". It states ...

  5. F - Monkey Banana Problem

    F - Monkey Banana Problem Time Limit:2000MS     Memory Limit:32768KB     64bit IO Format:%lld & ...

  6. [LightOJ1004]Monkey Banana Problem(dp)

    题目链接:http://lightoj.com/login_main.php?url=volume_showproblem.php?problem=1004 题意:数塔的变形,上面一个下面一个,看清楚 ...

  7. 2016huasacm暑假集训训练五 F - Monkey Banana Problem

    题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/F 题意:求至上而下一条路径的所经过的值得和最大值,这题比赛时就出了 但当时看不懂题 ...

  8. lightoj 1004 dp:数字三角形

    题目链接:http://lightoj.com/volume_showproblem.php?problem=1004 #include <cstdio> #include <cst ...

  9. LightOJ 1319 Monkey Tradition(中国剩余定理)

    题目链接:https://vjudge.net/contest/28079#problem/U 题目大意:给你n(n<12)行,每行有pi,ri,求一个数ans满足ans%pi=ri(i从1~n ...

随机推荐

  1. 理解 Objective-C 的 ARC

    英文原文:Understanding Automatic Reference Counting in Objective-C 自动引用计数(Automatic Reference Counting, ...

  2. 【其他】MySql数据库的安装与卸载

    一.安装 1.首先下载安装包,包含服务端和客户端 2.添加用户组.用户 secondary1:~ # groupadd mysql secondary1:~ # useradd -g mysql -d ...

  3. @+android:id的一些记录

    在修改Settings模块的APN列表时,遇到了类似标题中的一些写法. 在网上查了一下: 加上android:表示引用android.R.id里面定义的id资源,如果android.R.id里面确实有 ...

  4. log4j2日志

    log4j2.xmllog4j-api-2.5.jarlog4j-core-2.5.jar <?xml version="1.0" encoding="UTF-8& ...

  5. nginx(ubuntu)设置别名访问目录

    1 2 3 4 5 6 7 8 9 10 11 12 13 location /phpmyadmin/ { alias  /data/phpmyadmin/; index  index.html in ...

  6. 超赞的OOM检测(除了mat以外)

    今天看了下微博,扔物线分享了个内存检测的工具: 内存泄露是 OOM 最常见的原因,但它的侦测需人工排查,往往眼看瞎也未必能找到泄露的内存.Square 新库 LeakCanary 用一种巧妙的思路实现 ...

  7. ios可变数组的所有操作

    #pragma mark 创建数组c NSMutableArray * array =[[NSMutableArray alloc] initWithObjects:@"a",@& ...

  8. APK重新签名方法

    Android使用SHA1-RSA算法进行签名.可通过eclipse插件进行,可以通过keytool和jarsigner 用命令行执行,也可以在源码下进行签名. 第一种:通过使用eclipse进行签名 ...

  9. 触动精灵 alilib

    --gethtml function gethtml (url) local sz = require("sz") local http = require("szock ...

  10. Encoded Love-letter

    Encoded Love-letter Time Limit : 1000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other) ...