88422024-02-01 16:10:16KristófLeghosszabb béke (75 pont)cpp17Wrong answer 72/7568ms6468 KiB
#include <iostream>
#include <vector>
using namespace std;

struct harc{

int kezd;
int veg;


}typedef harc;

int main()
{
    int nap;
    int n;
    cin>>nap>>n;
    int kezd[n];
    int veg[n];
    int haboru[nap+1];
    vector <harc> hab;
    for(int i=0;i<nap;i++){
        haboru[i]=-1;
    }
    for(int i=0;i<n;i++){
        cin>>kezd[i];
        cin>>veg[i];

        if(haboru[kezd[i]]<veg[i]){
        haboru[kezd[i]]=veg[i];
    }
    }
    harc x;
    for(int i=0;i<nap;i++){
        if(haboru[i]!=-1){
                x.kezd=i;
                x.veg=haboru[i];
            if(hab.size()==0){
                hab.push_back(x);
            }
        else{
            if(x.kezd>hab[hab.size()-1].veg){
                hab.push_back(x);
            }
        else if(x.veg>hab[hab.size()-1].veg){
            hab[hab.size()-1].veg=x.veg;
        }
        }
        }

    }
    int max=hab[0].kezd-1;
    int kezd2=1;
    for(int i=0;i<hab.size()-1;i++){
        if(hab[i+1].kezd-hab[i].veg-1>max){
            max=hab[i+1].kezd-hab[i].veg-1;
            kezd2=hab[i].veg+1;
        }
    }
    if(max<nap-hab[hab.size()-1].veg){
        max=nap-hab[hab.size()-1].veg;
        kezd2=hab[hab.size()-1].veg+1;
    }
    if(max==0){
        cout<<-1;
    }
    cout<<max<<" "<<kezd2;

    return 0;
}
SubtaskSumTestVerdictTimeMemory
base72/75
1Accepted0/03ms1832 KiB
2Accepted0/068ms4208 KiB
3Wrong answer0/33ms2112 KiB
4Accepted3/33ms2308 KiB
5Accepted3/33ms2524 KiB
6Accepted3/33ms2636 KiB
7Accepted3/33ms2768 KiB
8Accepted4/43ms2812 KiB
9Accepted4/43ms2964 KiB
10Accepted4/43ms3032 KiB
11Accepted4/46ms3328 KiB
12Accepted4/47ms3460 KiB
13Accepted4/46ms3308 KiB
14Accepted4/46ms3312 KiB
15Accepted4/47ms3464 KiB
16Accepted4/48ms3776 KiB
17Accepted4/48ms3768 KiB
18Accepted4/48ms4104 KiB
19Accepted4/461ms6044 KiB
20Accepted4/461ms6280 KiB
21Accepted4/459ms6240 KiB
22Accepted4/461ms6468 KiB