uva1382
来源:互联网 发布:node sass dose not 编辑:程序博客网 时间:2024/06/06 00:23
#include<iostream>#include<algorithm>#include<cstdio>#include<cstring>using namespace std;struct node{ int x,y; bool operator<(const node &s){ return x<s.x; }}t[200];int ny[200],n,lef[200],on[200],on1[200];int solve(){ int i,j; sort(ny,ny+n); sort(t,t+n); int ans=0; int m=unique(ny,ny+n)-ny; if(m<=2) return n; for(i=0;i<m;i++) for(j=i+1;j<m;j++){ int miny=ny[i];int maxy=ny[j];memset(lef,0,sizeof(lef));memset(on,0,sizeof(on));memset(on1,0,sizeof(on1));int k=-1,r;for(r=0;r<n;r++){if(!r||t[r].x!=t[r-1].x)k++;lef[k]=k==0?0:lef[k-1]+on1[k-1]-on[k-1];if(t[r].y>miny&&t[r].y<maxy)on[k]++;if(t[r].y>=miny&&t[r].y<=maxy)on1[k]++;}if(k<=1)return n;int max=0;for(r=0;r<=k;r++){ans=ans>lef[r]+on1[r]+max?ans:lef[r]+on1[r]+max;max=max>on[r]-lef[r]?max:on[r]-lef[r];} } return ans;}int main(){int ss=0;while(cin>>n&&n){int i;for(i=0;i<n;i++){ scanf("%d%d",&t[i].x,&t[i].y);ny[i]=t[i].y;}printf("Case %d: %d\n",++ss,solve()); }return 0;}
0 0
- uva1382
- uva1382 Distant Galaxy
- uva1382 Distant Galaxy
- uva1382- Distant Galaxy (枚举)
- uva1382 - Distant Galaxy 部分枚举 递推
- 例题1.23 遥远的银河 UVa1382
- UVa1382--Distant Galaxy(离散化+扫描线)
- 【巧妙预处理系列+离散化处理】【uva1382】Distant Galaxy
- DEDE CMS安全警告:Safe Alert: Request Error step 2!
- Java线程:新特征-有返回值的线程
- json2使用方法
- 互斥锁 条件变量 信号量
- Log4j针对不同包指定level
- uva1382
- cocos2dx三种定时器的使用以及停止scheduleUpdate,scheduleOnce,schedule(改)
- SparkFlumeEvent:spark streaming连接flume,从SparkFlumeEvent中获取记录内容
- Objective-C基础---Objective-C的特有语法
- 写在之前的话
- 初识SEO
- smarty多维数组遍历
- web性能优化指南
- 为什么寄存器比内存快?