9475 2024. 02. 22 10:17:58 TortelliniJr Kerékpártúra (50 pont) cpp17 Időlimit túllépés 47/50 467ms 10192 KiB
using namespace std;
#include <iostream>
#include <vector>
#include <algorithm>
int main()
{
    int p, e, s;
    int a, b;
    cin >> p >> e >> s;
    vector<vector<int>> graf(p + 1);
    vector<vector<int>> farg(p + 1);
    for (int i = 0; i < e; i++)
    {
        cin >> a >> b;
        graf[a].push_back(b);
        farg[b].push_back(a);
    }
    int curr = s;
    vector<bool> vis(p);
    vector<int> st;
    vector<int> glhf;
    int n = 0;
    while (true)
    {
        vis[curr] = true;
        for (int i = 0; i < graf[curr].size(); i++)
        {
            if (graf[curr][i] != s && glhf.end() == find(glhf.begin(), glhf.end(), graf[curr][i]))
            {
                glhf.push_back(graf[curr][i]);
            }
        }
        for (int i = 0; i < farg[curr].size(); i++)
        {
            if (find(st.begin(), st.end(), farg[curr][i]) == st.end() && !vis[farg[curr][i]])
            {
                st.push_back(farg[curr][i]);
            }
        }
        if (n < st.size())
        {
            curr = st[n];
            n++;
        }
        else
        {
            break;
        }
    }
    cout << glhf.size() << endl;
    for (int i = 0; i < glhf.size(); i++)
    {
        cout << glhf[i] << " ";
    }
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 47/50
1 Elfogadva 0/0 3ms 1808 KiB
2 Elfogadva 0/0 21ms 4056 KiB
3 Elfogadva 2/2 3ms 2112 KiB
4 Elfogadva 2/2 3ms 2312 KiB
5 Elfogadva 2/2 3ms 2532 KiB
6 Elfogadva 2/2 3ms 2620 KiB
7 Elfogadva 2/2 3ms 2860 KiB
8 Elfogadva 2/2 4ms 2884 KiB
9 Elfogadva 2/2 4ms 3204 KiB
10 Elfogadva 2/2 4ms 3128 KiB
11 Elfogadva 2/2 7ms 3320 KiB
12 Elfogadva 2/2 14ms 3976 KiB
13 Elfogadva 2/2 14ms 4172 KiB
14 Elfogadva 2/2 25ms 4748 KiB
15 Elfogadva 3/3 43ms 6296 KiB
16 Elfogadva 4/4 64ms 6876 KiB
17 Elfogadva 4/4 115ms 7348 KiB
18 Elfogadva 3/3 119ms 7208 KiB
19 Elfogadva 3/3 115ms 7008 KiB
20 Elfogadva 3/3 144ms 9496 KiB
21 Elfogadva 3/3 342ms 10192 KiB
22 Időlimit túllépés 0/3 467ms 6476 KiB