44382023-03-28 08:50:40AGergoTestnevelés óracpp17Hibás válasz 1/501.1s126720 KiB
#include <bits/stdc++.h>

using namespace std;

int diakszam,emlekszam;
vector<vector<int>> graf;
vector<int> temp;

vector<int> v1;
vector<int> v2;

void rek(int kezd, int szint, vector<int> eljut)
{
    if(graf[kezd].size() == 0 && szint == diakszam)
    {
        /*cout << "1\n" << kezd << " ";
        for(int i = szint-2; i > -1; i--)
        {
            cout << eljut[i] << " ";
        }*/
        if(v1.size() == 0)
        {
            v1 = eljut;
            v1.push_back(kezd);
        }
        else if(v2.size() == 0)
        {
            v2 = eljut;
            v2.push_back(kezd);
            if(v1 == v2){v2.clear();}
        }
    }
    else if(szint < diakszam)
    {
        for(int x : graf[kezd])
        {
            temp = eljut;
            temp.push_back(kezd);
            rek(x,szint+1,temp);
        }
    }
}


int main()
{
    ios::sync_with_stdio(0); cin.tie(0);


    cin >> diakszam >> emlekszam;
    graf.resize(diakszam+1);

    vector<bool> van(diakszam+1);

    int a,b;

    for(int i = 0;i < emlekszam; i++)
    {
        cin >> a >> b;
        graf[b].push_back(a);
        van[a] = true;
    }

    for(int i = 1; i < diakszam+1; i++)
    {
        if(!van[i])
        {
            rek (i,1,{});
            break;
        }
    }

    if(v1.size() == 0)
    {
        cout << 0;
    }
    else if(v2.size() == 0)
    {
        cout << "1\n";
        for(int i = diakszam-1; i > -1; i--)
        {
            cout << v1[i] << " ";
        }
    }
    else
    {
        cout << 2;
        for(int i = diakszam-1; i > -1; i--)
        {
            cout << v1[i] << " ";
        }
        cout << '\n';
        for(int i = diakszam-1; i > -1; i--)
        {
            cout << v2[i] << " ";
        }
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base1/50
1Elfogadva0/03ms1824 KiB
2Hibás válasz0/03ms2020 KiB
3Hibás válasz0/064ms11492 KiB
4Hibás válasz0/23ms2328 KiB
5Hibás válasz0/33ms2676 KiB
6Hibás válasz0/33ms2632 KiB
7Hibás válasz0/33ms2768 KiB
8Hibás válasz0/13ms2976 KiB
9Hibás válasz0/33ms3116 KiB
10Időlimit túllépés0/31.049s3564 KiB
11Időlimit túllépés0/31.052s2876 KiB
12Elfogadva1/13ms3800 KiB
13Időlimit túllépés0/21.1s4292 KiB
14Hibás válasz0/33ms4256 KiB
15Időlimit túllépés0/11.1s8968 KiB
16Futási hiba0/3228ms126720 KiB
17Hibás válasz0/57ms13452 KiB
18Hibás válasz0/170ms20288 KiB
19Időlimit túllépés0/21.07s10656 KiB
20Futási hiba0/390ms126520 KiB
21Futási hiba0/4101ms126296 KiB
22Futási hiba0/4101ms126060 KiB