zoukankan      html  css  js  c++  java
  • BZOJ 2501: [usaco2010 Oct]Soda Machine 离散+差分

     [usaco2010 Oct]Soda Machine

    Time Limit: 3 Sec  Memory Limit: 128 MB
    Submit: 266  Solved: 182
    [Submit][Status][Discuss]

    Description

    To meet the ever-growing demands of his N (1 <= N <= 50,000) cows, 
    Farmer John has bought them a new soda machine. He wants to figure 
    out the perfect place to install the machine. 

    The field in which the cows graze can be represented as a one-dimensional 
    number line. Cow i grazes in the range A_i..B_i (1 <= A_i <= B_i; 
    A_i <= B_i <= 1,000,000,000) (a range that includes its endpoints), 
    and FJ can place the soda machine at any integer point in the range 
    1..1,000,000,000. Since cows are extremely lazy and try to move 
    as little as possible, each cow would like to have the soda machine 
    installed within her grazing range. 

    Sadly, it is not always possible to satisfy every cow's desires. 
    Thus FJ would like to know the largest number of cows that can be 
    satisfied. 

    To demonstrate the issue, consider four cows with grazing ranges 
    3..5, 4..8, 1..2, and 5..10; below is a schematic of their grazing 
    ranges: 


    1 2 3 4 5 6 7 8 9 10 11 12 13
    |---|---|---|---|---|---|---|---|---|---|---|---|-...
    aaaaaaaaa
    bbbbbbbbbbbbbbbbb
    ccccc ddddddddddddddddddddd

    Sample Output


    As can be seen, the first, second and fourth cows share the point 5, 
    but the third cow's grazing range is disjoint. Thus, a maximum of 
    3 cows can have the soda machine within their grazing range. 
    有N个人要去膜拜JZ,他们不知道JZ会出现在哪里,因此每个人有一个活动范围,只要JZ出现在这个范围内就能被膜拜, 
    伟大的JZ当然希望膜拜他的人越多越好,但是JZ不能分身,因此只能选择一个位置出现,他最多可以被多少人膜拜呢, 
    这个简单的问题JZ当然交给你了 


    3
    
    OUTPUT DETAILS:
    
    If the soda machine is placed at location 5, cows 1, 2, and 4 can be
    satisfied. It is impossible to satisfy all four cows.
    
    

    Input

    * Line 1: A single integer: N 

    * Lines 2..N+1: Line i+1 contains two space-separated integers: A_i 
    and B_i 

    Output

    * Line 1: A single integer representing the largest number of cows 
    whose grazing intervals can all contain the soda machine. 

    Sample Input

    4
    3 5
    4 8
    1 2
    5 10


    Sample Output

    3

    OUTPUT DETAILS:

    If the soda machine is placed at location 5, cows 1, 2, and 4 can be
    satisfied. It is impossible to satisfy all four cows.


    HINT

     

    Source

     
    题解:
      离散化后差分,l这里+1,r+1那里-1
      即可。
     1 #include<cstring>
     2 #include<cmath>
     3 #include<iostream>
     4 #include<algorithm>
     5 #include<cstdio>
     6 #include<cstdlib>
     7 
     8 #define N 50007
     9 #define ll long long
    10 using namespace std;
    11 inline int read()
    12 {
    13     int x=0,f=1;char ch=getchar();
    14     while(ch<'0'||ch>'9'){if (ch=='-') f=-1;ch=getchar();}
    15     while(ch>='0'&&ch<='9'){x=(x<<3)+(x<<1)+ch-'0';ch=getchar();}
    16     return x*f;
    17 }
    18 
    19 int n;
    20 int l[N],r[N],sum[N*2];
    21 int tot,a[N*2];
    22 
    23 int main()
    24 {
    25     n=read();
    26     for (int i=1;i<=n;i++)
    27     {
    28         l[i]=read(),r[i]=read()+1;
    29         a[++tot]=l[i],a[++tot]=r[i];
    30     }
    31     sort(a+1,a+tot+1);
    32     for (int i=1;i<=n;i++)
    33     {
    34         l[i]=lower_bound(a+1,a+tot+1,l[i])-a;
    35         r[i]=lower_bound(a+1,a+tot+1,r[i])-a;
    36         sum[l[i]]++;
    37         sum[r[i]]--;
    38     }
    39     int ans=0;
    40     for (int i=1;i<=tot;i++)
    41     {
    42         sum[i]=sum[i]+sum[i-1];
    43         ans=max(ans,sum[i]);
    44     }
    45     printf("%d
    ",ans);
    46 }
  • 相关阅读:
    blender 2.8 [学习笔记-033] 编辑模式-滑动边线
    blender 2.8 [学习笔记-032] 编辑模式-随机(光滑)
    blender 2.8 [学习笔记-031] 编辑模式-光滑
    blender 2.8 [学习笔记-030] 编辑模式-旋转
    blender 2.8 [学习笔记-029] 编辑模式-多边形建形
    TurtleBot3使用课程-第一节a(北京智能佳)
    ViperX 300 Robot Arm 机械臂 “5自由度和360°全方位旋转”
    TurtleBot 3 & 2i ROS开源实验平台
    在人工智能实验平台下对主流舵机的简介
    走进车联网,你将更深入地了解无人车和自动驾驶技术
  • 原文地址:https://www.cnblogs.com/fengzhiyuan/p/8204056.html
Copyright © 2011-2022 走看看