zoukankan      html  css  js  c++  java
  • 最多区间覆盖问题

    直线上n个区间,求被覆盖次数最多的点的被覆盖次数
    将区间端点离散化
    变为区间加问题

     1 //2018年2月14日12:02:51
     2 /*
     3 直线上n个区间,求被覆盖次数最多的点的被覆盖次数
     4 将区间端点离散化
     5 变为区间加问题
     6 
     7 */
     8 #include <iostream>
     9 #include <cstdio>
    10 #include <algorithm>
    11 using namespace std;
    12 
    13 const int N = 100001;
    14 int n;
    15 int a[N<<1], b[N<<1];
    16 int dif[N];
    17 
    18 int main(){
    19     cin >> n;
    20     for(int i=1;i<=2*n;i++){
    21         cin >> a[i];
    22         b[i] = a[i];
    23     }
    24     sort(b+1, b+2*n+1);
    25     for(int i=1;i<=2*n;i++)
    26         a[i] = lower_bound(b+1, b+2*n+1, a[i]) - b;
    27     for(int i=1;i<=2*n;i+=2){
    28         int s = a[i], t = a[i+1];
    29         dif[s]++;
    30         dif[t+1]--;
    31     }
    32     for(int i=1;i<=2*n;i++)
    33         dif[i] += dif[i-1];
    34     int maxx = 0;
    35     for(int i=1;i<=2*n;i++)
    36         if(dif[i] > maxx)
    37             maxx = dif[i];
    38     cout << maxx << endl;
    39 
    40     return 0;
    41 }
    42 /*
    43 input: 3 [1,3], [2, 4], [2,2]
    44 output: 3
    45 
    46 */
  • 相关阅读:
    Docker理解
    提高服务器并发量,有关系统配置的常规方法
    Linux EXT 文件系统 详解
    jvm入门
    2020-1-08.运维面试题总结
    hexo+gitee
    rsync
    haddop3.2.1完全分布式安装
    zabbix02
    zabbix监控工具问题集
  • 原文地址:https://www.cnblogs.com/sineagle/p/8448142.html
Copyright © 2011-2022 走看看