154642025-02-19 19:11:23horkaTestnevelés óracpp17Elfogadva 50/50138ms15016 KiB
#include <bits/stdc++.h>
using namespace std;

int main()
{
    ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    int n,k; cin>>n>>k;
    vector<int> be(n+1);
    vector<vector<int>> adj(n+1);
    for(int i=0; i<k;i++)
    {
        int a,b; cin>>a>>b;
        be[b]++;
        adj[a].push_back(b);
    }
    vector<int> s=be;
    deque<int> q;
    for(int i=1; i<=n; i++)
    {
        if(!be[i]) q.push_back(i);
    }
    vector<int> sorr1,sorr2;
    int cnt=0;
    while(!q.empty())
    {
        int cs=q.front();
        q.pop_front();
        cnt++;
        sorr1.push_back(cs);
        for(int &i:adj[cs])
        {
            s[i]--;
            if(s[i]==0)
            {
                q.push_back(i);
            }
        }
    }
    if(cnt<n)
    {
        cout<<"0\n";
        return 0;
    }
    s=be;
    for(int i=1; i<=n; i++)
        if(!s[i])
    {
        q.push_front(i);
    }
    while(!q.empty())
    {
        int cs=q.front();
        q.pop_front();
        sorr2.push_back(cs);
        for(int &i:adj[cs])
        {
            s[i]--;
            if(s[i]==0)
            {
                q.push_front(i);
            }
        }
    }
    if(sorr1==sorr2)
    {
        cout<<"1\n";
        for(int i:sorr1)
            cout<<i<<" ";
        cout<<"\n";
    }
    else
    {
        cout<<"2\n";
        for(int i:sorr1)
            cout<<i<<" ";
        cout<<"\n";
        for(int i:sorr2)
            cout<<i<<" ";
        cout<<"\n";
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms508 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva0/0103ms7980 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva3/31ms316 KiB
7Elfogadva3/31ms316 KiB
8Elfogadva1/11ms316 KiB
9Elfogadva3/31ms316 KiB
10Elfogadva3/32ms316 KiB
11Elfogadva3/32ms316 KiB
12Elfogadva1/12ms508 KiB
13Elfogadva2/22ms508 KiB
14Elfogadva3/31ms316 KiB
15Elfogadva1/179ms4904 KiB
16Elfogadva3/386ms10920 KiB
17Elfogadva5/546ms11680 KiB
18Elfogadva1/1138ms15016 KiB
19Elfogadva2/278ms5188 KiB
20Elfogadva3/3131ms12940 KiB
21Elfogadva4/4133ms13024 KiB
22Elfogadva4/4133ms12840 KiB