emm。。。。矩形嵌套 还记得吗。。。。就是它。。。

直接贴代码了。。。。

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.Scanner;public class Main{final static int maxn = 1000000;final static int INF = 0xfffffff;public static class node{int x,y,h;node(int x,int y,int h){this.x = x;this.y = y;this.h = h;}} public static void main(String[] args)  {Scanner cin = new Scanner(System.in);int cnt = 0;while(cin.hasNext()){ArrayList<node> Node = new ArrayList<>();int[] list = new int[maxn];int n = cin.nextInt();if(n == 0)break;for(int i=0;i<n;i++){list[0] = cin.nextInt();list[1] = cin.nextInt();list[2] = cin.nextInt();Arrays.sort(list,0,3);Node.add(new node(list[0],list[1],list[2]));Node.add(new node(list[0],list[2],list[1]));Node.add(new node(list[1],list[2],list[0]));}Collections.sort(Node,new Comparator<node>() {public int compare(node a,node b){return a.x -b.x;}});int maxx = -INF;int[] dp = new int[maxn];for(int i=0;i<Node.size();i++){dp[i] = Node.get(i).h;for(int j=0;j<i;j++){if(Node.get(i).x > Node.get(j).x && Node.get(i).y > Node.get(j).y && dp[j]+Node.get(i).h > dp[i])dp[i] = dp[j] + Node.get(i).h;}maxx = Math.max(maxx, dp[i]);}System.out.println("Case " + ++cnt + ": maximum height = " + maxx);}}
}

转载于:https://www.cnblogs.com/WTSRUVF/p/9063517.html

HDU1069 最长上升子序列相关推荐

  1. 最长公共子序列(LCS)问题 Longest Common Subsequence 与最长公告字串 longest common substr...

    问题描述:字符序列的子序列是指从给定字符序列中随意地(不一定连续)去掉若干个字符(可能一个也不去掉)后所形成的字符序列.令给定的字符序列X="x0,x1,-,xm-1",序列Y=& ...

  2. 最长连续子序列nlogn算法

    最长上升子序列(LIS)长度的O(nlogn)算法 标签: 算法search优化存储 2012-04-18 19:38 14031人阅读 评论(5) 收藏 举报  分类: 资料学习(15)  解题报告 ...

  3. leetcode-300 最长上升子序列

    题目描述: 给定一个无序的整数数组,找到其中最长上升子序列的长度. 示例: 输入: [10,9,2,5,3,7,101,18] 输出: 4 解释: 最长的上升子序列是 [2,3,7,101],它的长度 ...

  4. 【动态规划】最长公共子序列与最长公共子串

    1. 问题描述 子串应该比较好理解,至于什么是子序列,这里给出一个例子:有两个母串 cnblogs belong 比如序列bo, bg, lg在母串cnblogs与belong中都出现过并且出现顺序与 ...

  5. POJ 3080 多个串最长公共子序列

    求多个串最长公共子序列,字典序最小输出.枚举剪枝+kmp.比较简单,我用find直接查找16ms #include<iostream> #include<string> #in ...

  6. java实现最长连续子序列_最长公共子序列 ||

    问题:在 前一篇文章 最长公共子序列 | 的基础上要求将所有的最长公共子序列打印出来,因为最长公共子序列可能不只一种. 难点:输出一个最长公共子序列并不难,难点在于输出所有的最长公共子序列,我们需要在 ...

  7. 动态规划——最长上升子序列问题 两种角度及优化算法

    最长上升子序列 OpenJ_Bailian - 2757 一个数的序列 bi,当 b1 < b2 < ... < bS的时候,我们称这个序列是上升的.对于给定的一个序列( a1, a ...

  8. 动态规划—最长公共子序列问题 HDU-1159 Common Subsequence

    动态规划-最长公共子序列问题 Common Subsequence [ HDU - 1159 ] A subsequence of a given sequence is the given sequ ...

  9. 最长递增子序列的两种解法

    以LeetCode-300为例: O(n^2)解法: dp数组表示以i结尾的最长递增子序列的长度 class Solution { public:int lengthOfLIS(vector<i ...

最新文章

  1. 第十六周 个人项目开发流程
  2. 如何快速掌握oracle,教你如何快速从 Oracle 官方文档中获取需要的知识
  3. android 反色 java_Android小米,魅族6.0状态栏不能反色解决方法
  4. spring cloud eureka注册原理-注册失败填坑
  5. Hadoop 调研笔记
  6. 关于2022年电改政策的解读
  7. 【TcaplusDB知识库】读取数据示例(TDR表)
  8. [MapReduce] Counter
  9. java exit code 137_运维:k8s pod erro exit code 137
  10. 暑假计算机教育培训总结,暑假计算机培训心得体会
  11. 2-2日期时间类型基础
  12. CS231n系列之 Lecture1:Introduction
  13. 如何使用lerna管理你的仓库
  14. 计算机e的指数怎么计算方法,e^x的基本算法——剥离大指数法
  15. 《28岁未成年》感悟——永远不要失去自我
  16. 揭秘组件库一二事(上)
  17. 什么是容器编排及容器编排是怎么工作的?
  18. while循环语句初学
  19. win10安装usb转serial驱动(或Prolific USB-to-Serial Comm Port驱动)
  20. 可视化例子(10)——HighCharts三维堆叠柱状图

热门文章

  1. android dialog 字体,android – 为AlertDialog的MultiSelectItems设置自定义字体(字体)
  2. qnx 设备驱动开发_QNX驱动开发——应用层与resource manger交互 | 学步园
  3. python正则_python的正则表达式
  4. 【开源项目】向Nginx-RTMP服务器推流
  5. voms下的反射大师_VOMS旧版
  6. 巴特沃斯滤波器python_如何用Scipy.signal.bu实现带通巴特沃斯滤波器
  7. mysql sql 去除重复行_mysql – sql自连接表删除重复行
  8. 在text html模版中写js,Rails3使用text/html内容类型而不是text/javascript呈现js.erb模板...
  9. vmware中ubuntu虚拟机扩容
  10. 【渝粤教育】 广东开放大学 21秋期末考试物业环境与秩序管理10122k2