zoukankan      html  css  js  c++  java
  • [洛谷] P1204 挤牛奶

    贪心 线段重合

    求最大重叠段长度

    和最大间距

    //#pragma GCC optimize(2)
    #include <cstdio>
    #include <iostream>
    #include <cstdlib>
    #include <cmath>
    #include <cctype>
    #include <string>
    #include <cstring>
    #include <algorithm>
    #include <stack>
    #include <queue>
    #include <set>
    #include <map>
    #include <ctime>
    #include <vector>
    #include <fstream>
    #include <list>
    #include <iomanip>
    #include <numeric>
    using namespace std;
    typedef long long ll;
    
    const int MAXN = 1e6 + 10;
    
    ll ra = 0, rb = 0;
    
    struct node
    {
        ll fst, lst;
    }arr[MAXN];
    
    bool cmp(node a, node b)
    {
        if(a.fst != b.fst)
            return a.fst < b.fst;
        return a.lst ;
    }
    
    int main()
    {
        //ios::sync_with_stdio(false);
    
        //cin.tie(0);     cout.tie(0);
    
        int T;
    
        cin>>T;
    
        for(int i = 0; i < T; i++)
            cin>>arr[i].fst>>arr[i].lst;
    
        sort(arr, arr + T, cmp);
    
        /*printf("
    ");
    
        for(int i = 0; i < T; i++)
            cout<<arr[i].fst<<' '<<arr[i].lst<<endl;*/
    
        ll linkfst = arr[0].fst, linklst = arr[0].lst;
    
        ra = max(ra, linklst - linkfst);
    
        for(int i = 1; i < T; i++)
        {
            if(arr[i].lst > linklst && arr[i].fst <= linklst)
            {
                linklst = arr[i].lst;
                ra = max(ra, linklst - linkfst);
            }
            else if(arr[i].fst > linklst)
            {
                rb = max(rb, arr[i].fst - linklst);
    
                linkfst = arr[i].fst, linklst = arr[i].lst;
    
                ra = max(ra, linklst - linkfst);
            }
            
        }
    
        //printf("
    ");
        
        cout<<ra<<' '<<rb<<endl;
    
    
        return 0;
    }
  • 相关阅读:
    ubuntu开机挂载磁盘盘出现:Metadata kept in Windows cache, unable to mount
    ubuntuaptgetoldversion
    evince 41.2ubuntu 16.04snap
    ubuntu坚果云安装deb后启动不了
    电影票分析
    jieba分词讲解2
    期末总结建议
    软件架构师工作看法
    jieba分词讲解1
    1
  • 原文地址:https://www.cnblogs.com/zeolim/p/12270457.html
Copyright © 2011-2022 走看看