2084题目链接
1176题目链接
数塔问题,刚开始知道是动态规划确发现怎么想都想不出来,参考学习了其他人写的才知道这是一个数塔问题,建议写这题之前把2084做了。
2084显然是dp,但是数塔和普通的不同就是数塔从后往前递减。附上代码如下:

import java.util.Scanner;
/** 数塔*/
public class 杭电2084 {public static void main(String[] args) {   Scanner sc=new Scanner(System.in);int t=sc.nextInt();while(t-->0){int n=sc.nextInt();//高度int a[][]=new int[n 2][n 2];//赋值int dp[][]=new int[n 3][n 3];for(int i=1;i=1;i--){for(int j=1;jj?i:j;}
}

1176:核心状态方程为:dp[i][j]=max(dp[i 1][j-1],dp[i 1][j],dp[i 1][j 1]) a[i][j];
解释:第i秒的位置j最大是由第i 1秒的j-1,j,j 1三个位置的最大dp决定的。申请数组是多申请两位这样就不雅J越界报错了;
附上代码

import java.util.Scanner;
/** 数塔问题。倒过来看*/
public class 杭电1176 {public static void main(String[] args) {   Scanner sc=new Scanner(System.in);while(sc.hasNext()){int n=sc.nextInt();if(n==0)break;int max=0;int a[][]=new int[100003][13];long dp[][]=new long[100003][13];for(int i=0;imax){max=t1;}a[t1][x1 1] ;}        for(int i=max;i>=0;i--){for(int j=1;j<12;j ){dp[i][j]=max(dp[i 1][j-1],dp[i 1][j],dp[i 1][j 1]) a[i][j];}}System.out.println(dp[0][6]);}}private static long max(long i, long j, long k) {if(ik?i:k;}
}

杭电oj1176,2084java实现相关推荐

  1. 【杭电ACM】1097 A hard puzzle

    [杭电ACM]1097  A hard puzzle http://acm.hdu.edu.cn/showproblem.php?pid=1097 先用int手写了算法结果竟然wrong answer ...

  2. 【ACM】杭电OJ 1106 函数atoi

    函数atoi是把字符串转化成整数的函数,头文件为 #include "stdlib.h" e.g. 运行环境:Dev-C++ 5.11 杭电1106 调用了sort函数,运行的时间 ...

  3. 【ACM】杭电OJ 2037

    题目链接:杭电OJ 2037 先把b[i]进行排序,然后,b[i]与a[i+1]进行比较. #include <iostream> #include <cstdio> #inc ...

  4. 【ACM】杭电OJ 2020(排序)

    题目链接:杭电OJ 2020 排序可以有冒泡排序,选择排序,或者直接调用函数. 下面是选择排序: #include <stdio.h> #include <math.h> in ...

  5. 【ACM】杭电OJ 2018

    题目链接:杭电OJ 2018 从n>4开始,每一年的牛的数量=前一年的牛的数量+三年前的牛的数量 问:为什么是三年前? 答:假设三年前有一头小牛出生,出生的那一年即为第一年,到了第四年,即三年后 ...

  6. 【ACM】杭电OJ 1005

     题目链接:杭电OJ 1005 超时代码如下(而且开辟的数组空间大小不够): #include <stdio.h> int m[100000]; int f(int n,int a,int ...

  7. 【ACM】杭电OJ 1004

     题目链接:杭电OJ 1004 运行环境:Dev-C++ 5.11 思路: 先把先把num数组全部赋值为1:第一个颜色单独输入,从第二个开始,需要与前面的进行比较,如果前面有相同的颜色,则在目前的nu ...

  8. 【ACM】杭电OJ 2012。

    题目链接:杭电OJ 2012 思路很简单,但是有一种高效算法显示编译错误,不知道为什么 运行环境:VS2017 AC代码: #include <stdio.h> #include < ...

  9. 【ACM】杭电OJ 1003。

    运行环境VS2017  题目链接:杭电OJ 1003 主要思想是: 用d[i]来存放前i项中最大的和,得到end,然后再倒推,得起始的位置begin 然而在程序42行的疑问,大家可以讨论一下吗???? ...

最新文章

  1. Java知识系统回顾整理01基础04操作符07Scanner
  2. WordPress目录和文件介绍
  3. Docker Hub 镜像加速器
  4. 谷歌TensorFlow Lite支持Core ML
  5. 4月11日 GCD 总结(二)
  6. php 静态 成员属性,[已解决]php中静态成员方法和静态成员变量是不是不支持多态?...
  7. c语言中0xa0f对应的十进制,全国计算机二级C基础知识重点讲解
  8. C++成员变量初始化列表中初始化顺序
  9. Flutter ContrainedBox
  10. 推荐CSDN排名前1000博主
  11. c语言除法保留1位小数,高精度除法小数点位数
  12. 形式语言与自动机 第五章 课后题答案
  13. 《未来世界的幸存者》读书摘录及笔记
  14. 一个div在另一个div里垂直居中显示
  15. 面试题目之:为什么选择veu?与其他框架对比的优势和劣势?
  16. 所以,FileWriter和BufferedWriter的真正区别在哪
  17. 英语单词:through; fall through; write through
  18. 顽固程序的卸载?试试Microsoft自带的卸载工具
  19. jquery选择器连续选择_jQuery选择器简介
  20. GMap.net在winform中调用高德地图

热门文章

  1. 区块链BaaS云服务(21)腾讯CCGP跨链平台“系统架构”
  2. substrate 区块链框架 (1)概述
  3. (chap1 网络基础知识)网络的构成要素:(3)交换机
  4. 智能合约重构社会契约 (1)李嘉图合约
  5. C++ Primer 5th笔记(chap 15 OOP)访问控制与继承
  6. 3. Qt Creator
  7. 初等数论--原根--原根间的关系,原根个数
  8. 1365. 有多少小于当前数字的数字(哈希表)
  9. 01_SMC_Calling_Convention(SMCCC)
  10. linux中的SGI(核间中断)IPI_RESCHEDULE详解