hdu2084数塔问题
来源:互联网 发布:centos如何安装rpm包 编辑:程序博客网 时间:2024/06/06 01:51
数塔问题
是一个很明显的递推问题,我们可以推出递推式dp[i][j] = max(dp[i+1][j],dp[i+1][j+1)) +a[i][j],我们从下往上递推,所以dp[n][i] = a[n][i](循环位置i n->1 j 1->i),答案很显然是dp[1][1],下面贴上代码。
#include<bits/stdc++.h>using namespace std;typedef long long LL;const int maxn = 100 + 10;int dp[maxn][maxn];int a[maxn][maxn];void init(){ for(int i = 0;i<=100;i++) { for(int j = 0;j<=100;j++) { a[i][j] = 0; dp[i][j] = 0; } }}void solve(){ int t; scanf("%d",&t); while(t--) { init(); int n; scanf("%d",&n); for(int i = 1;i<=n;i++) { for(int j = 1;j<=i;j++) { scanf("%d",&a[i][j]); } } for(int i = 1;i<=n;i++) { dp[n][i] = a[n][i]; } for(int i =n-1;i>=1;i--) { for(int j = 1;j<=i;j++) { dp[i][j] = max(dp[i+1][j],dp[i+1][j+1]) + a[i][j]; } } printf("%d\n",dp[1][1]); }}int main(){ solve();}
import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.util.StringTokenizer;import java.util.concurrent.LinkedBlockingDeque;import java.util.Arrays;import java.util.Collections;import java.util.Comparator;import java.util.HashMap;import java.util.HashSet;import java.util.LinkedList;import java.util.Queue;import java.util.Scanner;import java.util.Stack;import java.lang.Math;public class Main{ Scanner cin = new Scanner(new BufferedInputStream(System.in)); int[][] a = new int[100+10][100+10]; int[][] dp = new int[100+10][100+10]; void init() { for(int i = 0;i<=110;i++) { for(int j= 0;j<=110;j++) { a[i][j] = 0; dp[i][j] = 0; } } } void solve() { int t; t = cin.nextInt(); while(t!=0) { t--; int n; n = cin.nextInt(); for(int i = 1;i<=n;i++) { for(int j= 1;j<=i;j++) { a[i][j] = cin.nextInt(); } } for(int i = 1;i<=n;i++) { dp[n][i] = a[n][i]; } for(int i = n-1;i>=1;i--) { for(int j = 1;j<=i;j++) { dp[i][j] =Math.max(dp[i+1][j+1], dp[i+1][j]) + a[i][j]; } } System.out.println(dp[1][1]); } } public static void main(String[] args) { new Main().solve(); }}
0 0
- hdu2084数塔问题
- hdu2084数塔问题
- HDU2084 数塔 【DP问题】
- HDU2084(数塔)
- HDU2084:数塔
- hdu2084 数塔
- HDU2084 数塔
- hdu2084 数塔
- hdu2084数塔
- hdu2084 dp数塔
- HDU2084:数塔(DP)
- HDU2084 数塔
- hdu2084 数塔
- HDU2084 数塔
- hdu2084数塔
- hdu2084数塔
- hdu2084数塔
- hdu2084 数塔
- 二叉搜索树的后序遍历序列
- redis学习记录06-pipeline
- maven安装与配置
- sqlite入门基础2
- layer.open关闭父窗口 以及调用父页面方法
- hdu2084数塔问题
- DynamicModel模型类
- win10 localhost 解析为::1 的解决办法
- iOS对图片进行马赛克处理
- iBET Lucky Draw Jason Zhang & Power Station Concert Ticket(Concert Ticket Lucky Draw, iBET, iBET Con
- ucos 任务的基本概念
- JFFs2文件系统的重新定制
- Visual Studio最常用、最高效的快捷键
- 命令find的35个实例