zoukankan      html  css  js  c++  java
  • 洛谷P1578 奶牛浴场

    P1578 奶牛浴场

    题目描述

    由于John建造了牛场围栏,激起了奶牛的愤怒,奶牛的产奶量急剧减少。为了讨好奶牛,John决定在牛场中建造一个大型浴场。但是John的奶牛有一个奇怪的习惯,每头奶牛都必须在牛场中的一个固定的位置产奶,而奶牛显然不能在浴场中产奶,于是,John希望所建造的浴场不覆盖这些产奶点。这回,他又要求助于Clevow了。你还能帮助Clevow吗?

    John的牛场和规划的浴场都是矩形。浴场要完全位于牛场之内,并且浴场的轮廓要与牛场的轮廓平行或者重合。浴场不能覆盖任何产奶点,但是产奶点可以位于浴场的轮廓上。

    Clevow当然希望浴场的面积尽可能大了,所以你的任务就是帮她计算浴场的最大面积。

    输入输出格式

    输入格式:

    输入文件的第一行包含两个整数L和W,分别表示牛场的长和宽。文件的第二行包含一个整数n,表示产奶点的数量。以下n行每行包含两个整数x和y,表示一个产奶点的坐标。所有产奶点都位于牛场内,即:0<=x<=L,0<=y<=W。

    输出格式:

    输出文件仅一行,包含一个整数S,表示浴场的最大面积。

    输入输出样例

    输入样例#1:
    10 10
    4
    1 1
    9 1
    1 9
    9 9
    输出样例#1:
    80

    说明

    0<=n<=5000

    1<=L,W<=30000

    Winter Camp 2002

    /*
        按横坐标排序,然后枚举每条边为左边界,再枚举右边界
        每枚举到右边界的一个点更新一遍浴场的宽度,在更新宽度之前更新答案 
    */
    #include<iostream>
    #include<cstdio>
    #include<algorithm>
    using namespace std;
    int n,m,num;
    struct node{
        int x,y;
        bool operator < (node b)const{
            if(x==b.x)return y<b.y;
            return x<b.x;
        }
    }a[5010];
    int main(){
        scanf("%d%d%d",&n,&m,&num);
        a[1].x=0;a[1].y=0;
        a[2].x=n;a[2].y=0;
        a[3].x=0;a[3].y=m;
        a[4].x=n;a[4].y=m;
        num+=4;
        for(int i=5;i<=num;i++)
            scanf("%d%d",&a[i].x,&a[i].y);
        sort(a+1,a+num+1);
        int ans=0;
        for(int i=1;i<=num;i++){
            int up=m,down=0;
            for(int j=i+1;j<=num;j++){
                if(a[i].x==a[j].x||a[j].y<down||a[j].y>up)continue;
                ans=max(ans,(a[j].x-a[i].x)*(up-down));
                if(a[j].y>down&&a[j].y<=a[i].y)down=a[j].y;
                if(a[j].y<up&&a[j].y>=a[i].y)up=a[j].y;
                if(down>=up)break;
            }
        }
        cout<<ans;
    }
  • 相关阅读:
    websphere、weblogic上JConsole的配置
    JMX连接WebSphere和WebLogic
    通过JMX监控管理weblogic的运行
    Manage, Administrate and Monitor GlassFish v3 from Java code usingAMX & JMX
    Harbor 简要安装说明
    VCSA 添加新管理用户的方法
    Oracle 修改参数
    CentOS8 设置开机自动登录账户的方法
    MYSQL使用mydumper备份恢复操作简介
    浅析网站上设置的广告位不显示问题:如何避免Adblock广告拦截
  • 原文地址:https://www.cnblogs.com/thmyl/p/7511687.html
Copyright © 2011-2022 走看看