173122025-06-22 22:19:19akososkaA lehető legkevesebb átszállás (50 pont)cpp17Hibás válasz 49/507ms652 KiB
#include <bits/stdc++.h>

using namespace std;
struct bencu{
    int elso;
    int masod;
}a[10001];

int main()
{
    int n,m,utolso=1,p=0,b[10001],hely=1,shely=1;
    cin>>n;
    cin>>m;
    for(int i=1;i<=n;i++){
        cin>>a[i].elso;
        cin>>a[i].masod;
    }
    if(a[1].elso!=1){
        cout<<-1;
        return 0;
    }
    int i=1;
    while(i<=n && utolso<m){
        if(utolso>=a[i].elso){
            if(a[i].masod>shely){
                shely=a[i].masod;
                hely=i;
            }
            i++;
        }
        else{
            utolso=shely;
            p++;
            b[p]=hely;
            if(a[i].masod>shely){
                shely=a[i].masod;
                hely=i;
            }
            i++;

        }
    }
    if(utolso!=shely){
        utolso=shely;
        p++;
        b[p]=hely;
    }
    if(utolso==m){
        cout<<p-1<<endl;
        for(int j=1;j<=p;j++){
        cout<<b[j]<<" ";
        }
    }
    else cout<<-1;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base49/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/07ms508 KiB
3Elfogadva1/11ms316 KiB
4Hibás válasz0/11ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva2/22ms520 KiB
8Elfogadva2/22ms316 KiB
9Elfogadva2/22ms316 KiB
10Elfogadva2/23ms316 KiB
11Elfogadva2/23ms384 KiB
12Elfogadva2/24ms444 KiB
13Elfogadva2/21ms412 KiB
14Elfogadva2/22ms508 KiB
15Elfogadva2/23ms316 KiB
16Elfogadva2/24ms408 KiB
17Elfogadva2/26ms440 KiB
18Elfogadva2/26ms608 KiB
19Elfogadva2/26ms500 KiB
20Elfogadva2/27ms384 KiB
21Elfogadva2/27ms404 KiB
22Elfogadva2/27ms316 KiB
23Elfogadva2/27ms316 KiB
24Elfogadva2/27ms476 KiB
25Elfogadva2/27ms500 KiB
26Elfogadva2/27ms316 KiB
27Elfogadva2/27ms316 KiB
28Elfogadva2/27ms652 KiB