LA 3695 Garbage Heap (DP)
来源:互联网 发布:c语言命名规则 编辑:程序博客网 时间:2024/06/01 18:08
题意:给出平面上的N个点,找一个矩形使得边界上的点最多
解:选定上下边界,枚举左右边界;
left[i],i边的左边有多少被包含在上下边界上的点,on[i]i边有多少被包含在上下边界上的点(不包括上下边界),on2[i]包括上下边界;
ans=left[j]-left[i]+on2[j]+on[i]; 当枚举右边界时,保留最优值on[i]-left[i],
#include<cstdio>#include<cstdlib>#include<cstring>#include<iostream>#include<cmath>#include<string>#include <bits/stdc++.h>using namespace std;const int N = 1e4+10;char str[1100][1100];map<int,int>q;struct node{ int x, y, cnt;} p[N];int cmp(node A,node B){ return A.x<B.x;}int on[N], on2[N], left1[N], ay[N], n, k1;int solve(){ sort(ay,ay+k1); sort(p,p+n,cmp); if(k1<=2) return n; int ans=0; for(int i=0; i<k1; i++) { for(int j=i+1; j<k1; j++) { int ymin=ay[i], ymax=ay[j]; int l=0; for(int k=0; k<n; k++) { if(k==0||p[k].x!=p[k-1].x) { ++l; on[l]=on2[l]=0; left1[l]=left1[l-1]+on2[l-1]-on[l-1]; } if(p[k].y>ymin&&p[k].y<ymax) on[l]++; if(p[k].y>=ymin&&p[k].y<=ymax) on2[l]++; } if(l<=2) return n; int m=0; for(int h=1; h<=l; h++) { ans=max(ans,left1[h]+on2[h]+m); m=max(m,on[h]-left1[h]); } } } return ans;}int main(){ int t, ncase=1; while(scanf("%d", &n),n!=0) { q.clear(); k1=0; for(int i=0; i<n; i++) { int x, y; scanf("%d %d", &x, &y); p[i].x=x,p[i].y=y; if(!q.count(y)) q[y]=1; ay[k1++]=y; } printf("Case %d: %d\n",ncase++,solve()); } return 0;}
阅读全文
0 0
- LA 3695 Garbage Heap (DP)
- UVA 10755 10755 - Garbage Heap(DP, s)
- Garbage Heap
- Garbage Heap
- UVa 10755 - Garbage Heap 最大子块和 dp
- uva10755 - Garbage Heap (最大子立方体)
- UVA 10755 Garbage Heap
- UVa:10755 Garbage Heap
- UVA 10755 Garbage Heap
- uva10755 - Garbage Heap
- 10755 - Garbage Heap
- UVA - 10755 Garbage Heap
- uva10755 - Garbage Heap
- UVA 10755 Garbage Heap
- uva10755 Garbage Heap
- 【UVA10755】Garbage Heap
- UVA 10755 - Garbage Heap(三维子矩阵最大和)
- uva 10755 - Garbage Heap(最大和问题)
- Linux C编程学习笔记(6):进程控制
- Android开发性能优化大总结
- Android Studio 快捷键
- 给一个整数数组,找到两个数使得他们的和等于一个给定的数 target(容易)
- 上传和下载---第十六天
- LA 3695 Garbage Heap (DP)
- flex布局
- DOM、JavaScript、Window
- 枚举 判断给定数列中 有几个不同的数
- Java 枚举值的用法
- 剑指Offer----包含min函数的栈
- 关于shader中用if的性能消耗分析
- attention机制 深入理解
- http请求头和响应头