hdu 1025 Constructing Roads In JGShining's Kingdom
来源:互联网 发布:轻量级python ide 编辑:程序博客网 时间:2024/05/20 18:50
最长上升子序列
题意:有2条线,每条线上有n个点,现在给你一些连接方式,一条线的点去连接另外一条线上的点。问这些线不交叉,最多能连多少条线
#include<cstdio>#include<cstdlib>#include<cstring>#include<algorithm>#define maxn 500100using namespace std;struct tt{ int x,y;}A[maxn];struct node{ int a,b;} N[maxn];bool cmp(struct node a,struct node b){ if(a.a==b.a)return a.b<b.b; if(a.a<b.a)return true; return false;}int Find(int len,int c,int d){ int left=0,right=len-1; while(left<=right) { int mid=(right+left)/2; if(A[mid].x<=c&&A[mid].y<=d) left=mid+1; else right=mid-1; } return left;}int main(){ int n,ans=0; while(~scanf("%d",&n)) { for(int i=0; i<n; i++) scanf("%d%d",&N[i].a,&N[i].b); sort(N,N+n,cmp); A[0].x=N[0].a,A[0].y=N[0].b; int len=1; for(int i=1; i<n; i++) { if(N[i].a>A[len-1].x&&N[i].b>A[len-1].y) { A[len].x=N[i].a,A[len].y=N[i].b; len++; } else { int top=Find(len,N[i].a,N[i].b); A[top].x=N[i].a,A[top].y=N[i].b; } } printf("Case %d:\n",++ans); if(len==1)printf("My king, at most %d road can be built.\n\n",len); else printf("My king, at most %d roads can be built.\n\n",len); } return 0;}
0 0
- hdu Constructing Roads In JGShining's Kingdom
- hdu 1025Constructing Roads In JGShining's Kingdom(LIS)
- hdu 1025 Constructing Roads In JGShining's Kingdom
- HDU 1025 Constructing Roads In JGShining's Kingdom
- hdu 1025 Constructing Roads In JGShining's Kingdom
- Hdu 1025 Constructing Roads In JGShining's Kingdom
- HDU 1025 Constructing Roads In JGShining's Kingdom DP+二分
- Hdu 1025 - Constructing Roads In JGShining's Kingdom
- hdu 1025 Constructing Roads In JGShining's Kingdom
- hdu 1025 Constructing Roads In JGShining's Kingdom(LIS)
- HDU 1025 Constructing Roads In JGShining's Kingdom
- hdu 1025 Constructing Roads In JGShining's Kingdom (DP + 二分)
- hdu 1025 Constructing Roads In JGShining's Kingdom
- HDU 1025 Constructing Roads In JGShining's Kingdom
- hdu 1025 Constructing Roads In JGShining's Kingdom
- hdu 1025 Constructing Roads In JGShining's Kingdom (LIS)
- HDU - 1025 Constructing Roads In JGShining's Kingdom
- HDU 1025 Constructing Roads In JGShining's Kingdom
- 重新计算了ListView的高度,发现最后一个item项却没有完整显示出来,或是数量越大最后几个是显示不出来的
- Seasonal Hybrid ESD笔记
- Fiddler使用笔记
- JAVA操作properties文件
- 字节码指令简介
- hdu 1025 Constructing Roads In JGShining's Kingdom
- HDU 1212 Big Number
- 英国议会听证会审理政府区块链应用
- Servlet---详情解析(一)---初始化/service方法/destroy方法等
- C++ 静态库与动态库
- JavaBean
- 怎样撰写科技论文
- BZOJ 2783 [JLOI2012]树
- UVA 401-Palindromes