zoukankan      html  css  js  c++  java
  • codeforces 597B Restaurant

    B. Restaurant

     
     

    A restaurant received n orders for the rental. Each rental order reserve the restaurant for a continuous period of time, the i-th order is characterized by two time values — the start time li and the finish time ri (li ≤ ri).

    Restaurant management can accept and reject orders. What is the maximal number of orders the restaurant can accept?

    No two accepted orders can intersect, i.e. they can't share even a moment of time. If one order ends in the moment other starts, they can't be accepted both.

    Input

    The first line contains integer number n (1 ≤ n ≤ 5·105) — number of orders. The following n lines contain integer values li and ri each (1 ≤ li ≤ ri ≤ 109).

    Output

    Print the maximal number of orders that can be accepted.

    Sample test(s)
    Input
    2
    7 11
    4 7
    Output
    1
    Input
    5
    1 2
    2 3
    3 4
    4 5
    5 6
    Output
    3
    Input
    6
    4 8
    1 5
    4 7
    2 5
    1 3
    6 8
    Output
    2
     1 #include<cstdio>
     2 #include<algorithm>
     3 using namespace std;
     4 struct order
     5 {
     6     int l,r;
     7 }r[500005];
     8 bool cmp(order a,order b)
     9 {
    10     return a.r<b.r;
    11 }
    12 int main()
    13 {
    14     int n;
    15     scanf("%d",&n);
    16     for(int i=0;i<n;i++)
    17         scanf("%d%d",&r[i].l,&r[i].r);
    18     sort(r,r+n,cmp);
    19     int e=r[0].r,ans=1;
    20     for(int i=1;i<n;i++)
    21         if(e<r[i].l)
    22         {
    23             ans++;
    24             e=r[i].r;
    25         }
    26     printf("%d
    ",ans);
    27     return 0;
    28 }
  • 相关阅读:
    配置rc.local开机自启动文件的疑问
    linux下使用shell查看apache IP访问量
    linux 查看剩余内存数
    linux ps 命令
    移动端资料大全
    git命令大全
    redis 应用场景
    TP框架中的多种方法代码(C,G,L,T,I,N,D,M,A,R,B,U,W,S,F,E)
    在linux上安装svn
    mysql 分表的实现方式
  • 原文地址:https://www.cnblogs.com/homura/p/4988077.html
Copyright © 2011-2022 走看看