HDU1069 最长上升子序列
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 最长上升子序列相关推荐
- 最长公共子序列(LCS)问题 Longest Common Subsequence 与最长公告字串 longest common substr...
问题描述:字符序列的子序列是指从给定字符序列中随意地(不一定连续)去掉若干个字符(可能一个也不去掉)后所形成的字符序列.令给定的字符序列X="x0,x1,-,xm-1",序列Y=& ...
- 最长连续子序列nlogn算法
最长上升子序列(LIS)长度的O(nlogn)算法 标签: 算法search优化存储 2012-04-18 19:38 14031人阅读 评论(5) 收藏 举报 分类: 资料学习(15) 解题报告 ...
- leetcode-300 最长上升子序列
题目描述: 给定一个无序的整数数组,找到其中最长上升子序列的长度. 示例: 输入: [10,9,2,5,3,7,101,18] 输出: 4 解释: 最长的上升子序列是 [2,3,7,101],它的长度 ...
- 【动态规划】最长公共子序列与最长公共子串
1. 问题描述 子串应该比较好理解,至于什么是子序列,这里给出一个例子:有两个母串 cnblogs belong 比如序列bo, bg, lg在母串cnblogs与belong中都出现过并且出现顺序与 ...
- POJ 3080 多个串最长公共子序列
求多个串最长公共子序列,字典序最小输出.枚举剪枝+kmp.比较简单,我用find直接查找16ms #include<iostream> #include<string> #in ...
- java实现最长连续子序列_最长公共子序列 ||
问题:在 前一篇文章 最长公共子序列 | 的基础上要求将所有的最长公共子序列打印出来,因为最长公共子序列可能不只一种. 难点:输出一个最长公共子序列并不难,难点在于输出所有的最长公共子序列,我们需要在 ...
- 动态规划——最长上升子序列问题 两种角度及优化算法
最长上升子序列 OpenJ_Bailian - 2757 一个数的序列 bi,当 b1 < b2 < ... < bS的时候,我们称这个序列是上升的.对于给定的一个序列( a1, a ...
- 动态规划—最长公共子序列问题 HDU-1159 Common Subsequence
动态规划-最长公共子序列问题 Common Subsequence [ HDU - 1159 ] A subsequence of a given sequence is the given sequ ...
- 最长递增子序列的两种解法
以LeetCode-300为例: O(n^2)解法: dp数组表示以i结尾的最长递增子序列的长度 class Solution { public:int lengthOfLIS(vector<i ...
最新文章
- 第十六周 个人项目开发流程
- 如何快速掌握oracle,教你如何快速从 Oracle 官方文档中获取需要的知识
- android 反色 java_Android小米,魅族6.0状态栏不能反色解决方法
- spring cloud eureka注册原理-注册失败填坑
- Hadoop 调研笔记
- 关于2022年电改政策的解读
- 【TcaplusDB知识库】读取数据示例(TDR表)
- [MapReduce] Counter
- java exit code 137_运维:k8s pod erro exit code 137
- 暑假计算机教育培训总结,暑假计算机培训心得体会
- 2-2日期时间类型基础
- CS231n系列之 Lecture1:Introduction
- 如何使用lerna管理你的仓库
- 计算机e的指数怎么计算方法,e^x的基本算法——剥离大指数法
- 《28岁未成年》感悟——永远不要失去自我
- 揭秘组件库一二事(上)
- 什么是容器编排及容器编排是怎么工作的?
- while循环语句初学
- win10安装usb转serial驱动(或Prolific USB-to-Serial Comm Port驱动)
- 可视化例子(10)——HighCharts三维堆叠柱状图
热门文章
- android dialog 字体,android – 为AlertDialog的MultiSelectItems设置自定义字体(字体)
- qnx 设备驱动开发_QNX驱动开发——应用层与resource manger交互 | 学步园
- python正则_python的正则表达式
- 【开源项目】向Nginx-RTMP服务器推流
- voms下的反射大师_VOMS旧版
- 巴特沃斯滤波器python_如何用Scipy.signal.bu实现带通巴特沃斯滤波器
- mysql sql 去除重复行_mysql – sql自连接表删除重复行
- 在text html模版中写js,Rails3使用text/html内容类型而不是text/javascript呈现js.erb模板...
- vmware中ubuntu虚拟机扩容
- 【渝粤教育】 广东开放大学 21秋期末考试物业环境与秩序管理10122k2