91072024-02-14 07:24:07PedriMekk Mester munkái (50 pont)cpp17Accepted 50/5090ms7652 KiB
#include <iostream>
#include <fstream>

using namespace std;
int n ,k;

struct munak{
int kezd;
int veg;
int sorsz;
}a[100001];

int helyre(int elso, int utolso){
int i=elso, j=utolso, p=elso;
while(i<j){
    if(a[i].veg>a[j].veg){
        swap(a[i], a[j]);
        if(i==p){p=j;i++;}
        else {p=i;j--;}}
    else {
        if(p==i)j--;
        else i++;
    }
}
return p;
}

void gyors(int elso, int utolso){
if(elso<utolso){
    int k=helyre(elso, utolso);
    gyors(elso, k-1);
    gyors(k+1, utolso);
}
}


int main()
{
    ifstream f("be.in");
    cin>>n>>k;
    for(int i=1;i<=n;i++){
        cin>>a[i].kezd;
        cin>>a[i].veg;
        a[i].sorsz=i;
    }
    gyors(1, n);
    /*for(int i=1;i<=n;i++){
        cout<<a[i].sorsz<<" "<<a[i].kezd<<" "<<a[i].veg<<endl;
    }*/
    int mveg=0, fveg=0;
    int mmu[100001], fmu[100001], m=0, fi=0;
    for(int i=1;i<=n;i++){
        if(mveg<fveg){
            if(fveg<a[i].kezd){
                fi++;
                fmu[fi]=a[i].sorsz;
                fveg=a[i].veg;
            }
            else if(mveg<a[i].kezd){
                m++;
                mmu[m]=a[i].sorsz;
                mveg=a[i].veg;
            }
        }else if(mveg<a[i].kezd){
                m++;
                mmu[m]=a[i].sorsz;
                mveg=a[i].veg;
        }   else if(fveg<a[i].kezd){
                fi++;
                fmu[fi]=a[i].sorsz;
                fveg=a[i].veg;
            }
    }
    cout<<m<<" "<<fi<<endl;
    for(int i=1;i<=m;i++){
        cout<<mmu[i]<<" ";
    }
    cout<<endl;
    for(int i=1;i<=fi;i++){
        cout<<fmu[i]<<" ";
    }
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/03ms3360 KiB
2Accepted0/09ms3836 KiB
3Accepted1/13ms3764 KiB
4Accepted1/13ms3980 KiB
5Accepted2/23ms4340 KiB
6Accepted2/23ms4416 KiB
7Accepted2/23ms4628 KiB
8Accepted2/23ms4712 KiB
9Accepted3/33ms4908 KiB
10Accepted1/14ms4924 KiB
11Accepted1/14ms5000 KiB
12Accepted2/24ms5076 KiB
13Accepted2/24ms4920 KiB
14Accepted2/24ms4920 KiB
15Accepted2/24ms5048 KiB
16Accepted3/34ms5136 KiB
17Accepted2/282ms7524 KiB
18Accepted2/282ms7536 KiB
19Accepted4/482ms7440 KiB
20Accepted4/482ms7436 KiB
21Accepted4/482ms7440 KiB
22Accepted4/483ms7644 KiB
23Accepted4/490ms7652 KiB