博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
uva 1382 - Distant Galaxy
阅读量:4073 次
发布时间:2019-05-25

本文共 918 字,大约阅读时间需要 3 分钟。

1. 坐标值比较大,所以离散化坐标

2. 坐标的绝对值不超过10^9,说明可能有负数,所以把全部坐标移动转换为正数(加上10^9)

3. mat[i][j] ,表示(0,0) (i, j)为对顶点矩形之内包括边界上有多少个点。

4. 枚举矩形的上下界,然后选择左右边界。 对于确定的左边界left和右边界right, 假设是下图的R3是left,  L3是right,那么数量为:

L1 + L2 + L3 - (R1+R2) + R3.   

为了要使得以L3为右边界的矩形上的点最多,那么应该使得 R3-(R1+R2)的值最大。

所以,枚举右边界j, 维护保存j左边的R3-(R1+R2)的最大值,只要O(n)就可以确定答案了。

5. 需要注意的是所有点可能都在同一条直线上,所以给横坐标和右坐标都另外添加一个点

代码: 

#include
#include
#include
#include
#include
using namespace std;const int MAXN = 110;const int ADD = 1e9+10;int n;int arr[MAXN][2];int mat[MAXN][MAXN];int X[MAXN], Y[MAXN], row, col;inline int findID(int* A, int len, int x){ return lower_bound(A, A+len, x)-A+1;}inline void input(){ row = 1, col = 1; X[0] = Y[0] = 0; for(int i=0; i
maxx) maxx=tmp; } } } return ans;}int main(){ int cas=1; while(~scanf("%d", &n) && n){ input(); printf("Case %d: %d\n", cas++, solve()); } return 0;}

转载地址:http://tszni.baihongyu.com/

你可能感兴趣的文章
PNG图片优化技术(一)
查看>>
photoshop 优化 PNG 图片尺寸大小 终极秘技!
查看>>
mmo游戏开发应在profile下运行,才能保证正式运行不卡
查看>>
关于Flash CS3创建Sprite类型的问题
查看>>
AS3通俗教程---AS3自身loading制作
查看>>
0 bytes after compression出现的情况
查看>>
内存回收专题
查看>>
[资料] 史上最强的伯克利大学1024线飞龙AI下载地址,有没有人有兴趣来测试一手?...
查看>>
Discuz多人斗地主积分版,消耗论坛积分的斗地主
查看>>
discuz X2斗地主积分版插件安装方法(用户版)
查看>>
ASP.NET程序也能像WinForm程序一样运行
查看>>
听到两个程序员聊天——A:“借我1K块。”
查看>>
轻松搭建一个Windows SVN服务器
查看>>
Discuz X2多人斗地主[消耗论坛积分]小体积版本,仅25MB!
查看>>
大型多人在线MMO RPG游戏最重要的二个职位
查看>>
NVIDIA_Fermi_GPU架构简单解析(转)
查看>>
以前看过一个压缩过的.exe,运行会播放长达半小时的动画,却只有60KB,个人认为其中的原理...
查看>>
给vs2012轻松换肤
查看>>
socket短时间内重连需注意的问题
查看>>
关于线程和线程栈
查看>>