• HDoj-2084-号码塔-dp


    号码塔

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


    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
    #include<cstdio> 
    #include<cstring>
    #include<cmath>
    #include<iostream>
    #include<algorithm>
    int a[110][110]={0};
    using namespace std;
    int main()
    {
    	
    	int T,n,i,j;
    	scanf("%d",&T);
    	while(T--)
    	{
    		scanf("%d",&n);
    		for(i=0;i<n;i++)
    		{
    			for(j=0;j<=i;j++)
    			{
    				scanf("%d",&a[i][j]);
    			}
    		}
    		for(i=n-1;i>0;i--) 
    	    { 
    	       for(j=0;j<i;j++) 
    		   { 
    			 a[i-1][j]+=max(a[i][j],a[i][j+1]); 
    		   }
    	    }
    		printf("%d
    ",a[0][0]);
    	}
    	return 0;
    } 


    版权声明:本文博主原创文章,可能不会没有任何同意转载!

  • 相关阅读:
    POJ 2253 Prim算法及测试数据
    使用getopt_long解析程序长选项参数
    把Javascript对象序列化后作为参数传输
    JSP工程中的读配置文件方法
    C base64 编码文件
    log的记录
    加权
    项目管理流程和工程管理流程
    从全局眼光看log,异常处理的记录
    证书信任和用户认证
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4888081.html
Copyright © 2020-2023  润新知