• Asia Yokohama Regional Contest 2018 C题


    https://codeforces.com/gym/102082

    题意

    求所有人从电影院的座位上逃出去的最快时间

    题解

    显然,所有人从电影院的座位上逃出去的最快时间取决于最慢的那个人,那我们可以先把每个人最快(假设前面没人挡他)的逃生时间算出来,那么每个人都对应了一个时间,然后我们从前往后扫一遍时间,如果某时间点t上有x个人,下一时间点t+1就要加上这x-1的等待时间,如果t上没人,那么这一时间点可以容纳一个人,最后把最慢的那个人的逃生时间加上一路推过来的的等待时间就是答案

     1 #define IO std::ios::sync_with_stdio(false);
     2 #define bug(x) cout<<x<<" "<<endl
     3 #include <bits/stdc++.h>
     4 #define itor ::iterator
     5 using namespace std;
     6 #define pb push_back
     7 typedef long long ll;
     8 typedef double db;
     9 const int N=6e5+5;
    10 int r,s,p,mx,mi=1e9;
    11 int a[N];
    12 int main(){
    13     scanf("%d%d%d",&r,&s,&p);
    14     for(int i=1;i<=p;i++){
    15         int x,y;
    16         scanf("%d%d",&x,&y);
    17         int v=r-x+1;
    18         if(y<=s)v+=s-y+1;
    19         else v+=y-s;
    20         mx=max(mx,v);
    21         mi=min(mi,v);
    22         a[v]++;
    23     }
    24     int k=0;
    25     for(int i=mi;i<=mx;i++){
    26         if(a[i]==0){
    27             if(k>0)k--;
    28         }
    29         else{
    30             k+=a[i]-1;
    31         }    
    32     }
    33     printf("%d
    ",mx+k);
    34 }
  • 相关阅读:
    metasploit--multi/samba/usermap_script
    msfcli 不能使用,在新版metasploit不再有效,推荐使用msfconsole
    test.fire渗透测试
    metasploit服务扫描与查点
    Synchronized底层实现
    正在使用的IDEA插件
    JavaWeb
    设计模式
    MySQL
    计算机网络
  • 原文地址:https://www.cnblogs.com/ccsu-kid/p/10599484.html
Copyright © 2020-2023  润新知