数塔

Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 34513    Accepted Submission(s):
20587

Problem Description
在讲述DP算法的时候,一个经典的例子就是数塔问题,它是这样描述的:

有如下所示的数塔,要求从顶层走到底层,若每一步只能走到相邻的结点,则经过的结点的数字之和最大是多少?

已经告诉你了,这是个DP的题目,你能AC吗?

 
Input
输入数据首先包括一个整数C,表示测试实例的个数,每个测试实例的第一行是一个整数N(1 <= N
<= 100),表示数塔的高度,接下来用N行数字表示数塔,其中第i行有个i个整数,且所有的整数均在区间[0,99]内。
 
Output
对于每个测试实例,输出可能得到的最大和,每个实例的输出占一行。
 
Sample Input
1
5
7
3 8
8 1 0
2 7 4 4
4 5 2 6 5
 
 
Sample Output
30

import java.util.Scanner;

public class Main2084 {

public static void main(String[] args) {
Scanner cin=new Scanner(System.in);
while(cin.hasNext()){
int t=cin.nextInt();
while(t-->0){
int n=cin.nextInt();
int [][]a=new int [n][n];
for(int i=0;i<n;i++){
for(int j=0;j<=i;j++){
a[i][j]=cin.nextInt();
}
}
for(int i=1;i<n;i++){
for(int j=0;j<=i;j++){
if(j!=0){
int sum1=a[i][j]+a[i-1][j-1];
int sum2=a[i][j]+a[i-1][j];
a[i][j]=max(sum1,sum2);
}
else
a[i][j]+=a[i-1][j];
}
}
int max=Integer.MIN_VALUE;
for(int j=0;j<n;j++){
if(max<a[n-1][j])
{
max=a[n-1][j];
}
}
System.out.println(max);
}
}
}
private static int max(int sum1, int sum2) {
if(sum1>sum2)
return sum1;
else
return sum2;
}

}

这是一个简单的DP题目。

HDU2084JAVA的更多相关文章

随机推荐

  1. HTML5 知识点

    HTML5 知识点   (1)语义化标记       <header>,<footer>,<nav>,<article>,<section> ...

  2. Android Adapter的getViewTypeCount和getItemViewType

    Adapter的getViewTypeCount和getItemViewType 不同的项目布局(item layout) 我们再举一个稍微复杂的例子,在上例的list中加入一些分隔线 你需要做这些: ...

  3. [LeetCode#157] Read N Characters Given Read4

    Problem: The API: int read4(char *buf) reads 4 characters at a time from a file. The return value is ...

  4. linux内核驱动中_IO, _IOR, _IOW, _IOWR 宏的用法与解析

    在驱动程序里, ioctl() 函数上传送的变量 cmd 是应用程序用于区别设备驱动程序请求处理内容的值.cmd除了可区别数字外,还包含有助于处理的几种相应信息. cmd的大小为 32位,共分 4 个 ...

  5. 国内外最全的asp.net开源项目

    转自:http://www.cnblogs.com/fengtangquan/archive/2010/10/19/1855472.html 最近一些项目开始用到CMS系统,最开始是研究JAVA的,无 ...

  6. 海量jQuery插件

    转自:http://blog.csdn.net/zzq58157383/article/details/6900142 提醒大家在使用的时候注意jQuery包的版本问题,最好是使用相同的版本,因为使用 ...

  7. IIS出现Server Error in '/' Application.CS0016的解决办法

    这两天一直在弄IIS的事,全都是报错,网上找了好多资料,也尝试了很多,终于在几分钟之前把困扰了我一周的麻烦给解决了,现整理出来,希望对大家有用,闲话少说,直接上图了 Server Error in ' ...

  8. ASP.NET MVC 中将FormCollection与实体间转换方法 (转)

    将Action动作中传递的FormCollection转变成对应的实体,可以使用Controller的TryUpdateModel()方法. [HttpPost] public ActionResul ...

  9. Android学习笔记(十二)BroadcastReceiver的有序广播和优先级

    前两篇博文中简单整理了普通广播,其实还有有序广播,有序广播在开发中也是比不可少的,可以给广播接收者设定优先级来控制接受顺序,并却可以中断广播传递等等. 一.两种Broadcast: · 普通广播(No ...

  10. pow(x,n) leecode

    https://oj.leetcode.com/problems/powx-n/ 提交地址 快速幂的使用,可以研究一下 public class Solution { public double po ...