10690 | 2024. 04. 09 15:24:39 | Vargus | Testnevelés óra | cpp17 | Hibás válasz 43/50 | 236ms | 34372 KiB |
#include <iostream>
#include <queue>
#include <algorithm>
#define ll long long
using namespace std;
struct adat
{
bool lat = false;
ll csop = 1, befok = 0;
vector <ll> sz;
};
vector <adat> x;
deque <ll> v, poz;
bool kor = false;
void szelesseg(ll csp)
{
v.push_front(csp);
if(!x[csp].lat)
poz.push_front(csp);
while (!v.empty())
{
ll akt = v.front();
v.pop_front();
x[akt].lat = true;
for (auto& e : x[akt].sz)
{
x[e].befok--;
if (!x[e].befok)
{
v.push_front(e);
x[e].csop = x[akt].csop + 1;
poz.push_back(e);
}
}
}
}
int main()
{
ll n, k;
cin >> n >> k;
x.resize(n + 1);
for (ll i = 1; i <= k; ++i)
{
ll cs1, cs2;
cin >> cs1 >> cs2;
x[cs1].sz.push_back(cs2);
x[cs2].befok++;
}
for (ll i = 1; i <= n; ++i)
{
if (!x[i].befok)
{
szelesseg(i);
}
}
if (poz.size() != n)
{
cout << "0";
return 0;
}
else
{
for (ll i = 1; i < n; ++i)
{
if (x[poz[i - 1]].csop == x[poz[i]].csop)
{
cout << "2\n";
for (auto& e : poz)
cout << e << " ";
cout << endl;
swap(poz[i], poz[i - 1]);
for (auto& e : poz)
cout << e << " ";
return 0;
}
}
cout << "1\n";
for (auto& e : poz)
cout << e << " ";
}
return 0;
}
/*
5 9
3 1
3 5
3 4
4 2
3 2
1 4
1 2
1 5
5 4
5 3
2 1
3 2
1 5
4 4
1 2
2 3
3 4
4 2
*/
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 43/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1712 KiB | |||
2 | Elfogadva | 0/0 | 3ms | 2020 KiB | |||
3 | Hibás válasz | 0/0 | 194ms | 19420 KiB | |||
4 | Elfogadva | 2/2 | 3ms | 2296 KiB | |||
5 | Elfogadva | 3/3 | 3ms | 2376 KiB | |||
6 | Elfogadva | 3/3 | 3ms | 2380 KiB | |||
7 | Elfogadva | 3/3 | 3ms | 2600 KiB | |||
8 | Elfogadva | 1/1 | 3ms | 2592 KiB | |||
9 | Elfogadva | 3/3 | 3ms | 2724 KiB | |||
10 | Elfogadva | 3/3 | 4ms | 3140 KiB | |||
11 | Elfogadva | 3/3 | 4ms | 3116 KiB | |||
12 | Hibás válasz | 0/1 | 4ms | 3116 KiB | |||
13 | Elfogadva | 2/2 | 4ms | 3120 KiB | |||
14 | Hibás válasz | 0/3 | 3ms | 3096 KiB | |||
15 | Elfogadva | 1/1 | 163ms | 14620 KiB | |||
16 | Hibás válasz | 0/3 | 150ms | 24740 KiB | |||
17 | Elfogadva | 5/5 | 67ms | 25484 KiB | |||
18 | Elfogadva | 1/1 | 236ms | 34372 KiB | |||
19 | Elfogadva | 2/2 | 167ms | 15640 KiB | |||
20 | Elfogadva | 3/3 | 202ms | 29648 KiB | |||
21 | Elfogadva | 4/4 | 187ms | 29648 KiB | |||
22 | Elfogadva | 4/4 | 207ms | 29576 KiB |