Cod sursa(job #2676954)

Utilizator Fantastic_Mantudor voicu Fantastic_Man Data 25 noiembrie 2020 15:45:01
Problema Patrate 3 Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream fin("patrate3.in");
ofstream fout("patrate3.out");
vector <pair <int,int> > v;
int main() {
    int n,k,i,h,l,lmax,len,st,dr;
    fin>>n>>k;
    for(i=1;i<=n;i++) {
        fin>>st>>len;
        v.push_back(make_pair(st,1));
        v.push_back(make_pair(st+len,-1));
    }
    sort(v.begin(),v.end());
    h=l=0;
    lmax=-1; dr=-1;
    for(i=0;i<v.size();i++) {
        h+=v[i].second;
        if(h>=k)
            l+=v[i+1].first-v[i].first;
        else {
            if(l>lmax) {
                lmax=l;
                dr=v[i].first;
            }
            l=0;
        }
    }
    if(l>lmax) {
        lmax=l;
        dr=v[i-1].first;
    }
    fout<<dr-lmax<<' '<<lmax;

    return 0;
}