156162025-02-21 09:37:29MatematikaFertőzési sorozat (50 pont)cpp17Időlimit túllépés 34/50600ms508 KiB
#include <bits/stdc++.h>

using namespace std;

vector<vector<int>> vec;
vector<bool> kas;
vector<int> erdos,ki;
int e=0;

void dfs(int x)
{
    e++;
    erdos[x]=e;
    for(auto& z:vec[x])
        if(erdos[z]>e+1 || erdos[z]==0)
            dfs(z);
    e--;
}

int main()
{
    ios::sync_with_stdio(false); cin.tie(0);
    int n,m,k; cin >> n >> m >> k;
    vec.resize(n);
    kas.resize(n);
    erdos.resize(n);
    vector<int> be(k);
    for(auto& z:be)
    {
        cin >> z;
        z--;
        kas[z]=true;
    }
    for(int i=0; i<m; i++)
    {
        int a,b; cin >> a >> b;
        vec[a-1].push_back(b-1);
        vec[b-1].push_back(a-1);
    }
    for(int i=0; i<n; i++)
    {
        if(kas[i] && i!=be[0])
            continue;
        erdos.assign(n,0);
        dfs(i);
        /*for(auto z:erdos)
            cerr << z << " ";*/
        /*if(i==3)
            for(auto z:erdos)
                cerr << z << " ";*/
        int elozo=be[0];
        bool berak=true;
        for(auto& z:be)
        {
            if(erdos[z]!=erdos[elozo] && erdos[elozo]+1!=erdos[z])
            {
                berak=false;
                break;
            }
            elozo=z;
        }
        /*for(int i=0; i<n; i++)
            if(!kas[i] && (erdos[i]<erdos[be[0]] || erdos[i]>erdos[be.back()]))
                berak=false;*/
        if(berak)
            ki.push_back(i);
    }
    cout << ki.size() << "\n";
    for(auto z:ki)
        cout << z+1 << " ";
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base34/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva0/0114ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/210ms316 KiB
6Elfogadva2/261ms316 KiB
7Elfogadva2/272ms436 KiB
8Elfogadva2/2125ms440 KiB
9Elfogadva2/2196ms508 KiB
10Időlimit túllépés0/2598ms456 KiB
11Elfogadva1/16ms316 KiB
12Elfogadva2/23ms316 KiB
13Elfogadva2/24ms456 KiB
14Elfogadva2/23ms316 KiB
15Elfogadva2/23ms456 KiB
16Elfogadva2/24ms448 KiB
17Elfogadva2/23ms316 KiB
18Elfogadva1/13ms316 KiB
19Elfogadva1/13ms316 KiB
20Elfogadva1/13ms316 KiB
21Időlimit túllépés0/1598ms328 KiB
22Időlimit túllépés0/1600ms316 KiB
23Elfogadva1/1500ms316 KiB
24Hibás válasz0/1277ms316 KiB
25Elfogadva1/1112ms316 KiB
26Elfogadva1/1365ms456 KiB
27Időlimit túllépés0/1598ms368 KiB
28Hibás válasz0/1323ms452 KiB
29Elfogadva1/1493ms316 KiB
30Hibás válasz0/1277ms316 KiB
31Hibás válasz0/1286ms448 KiB
32Elfogadva1/1405ms456 KiB
33Elfogadva1/14ms316 KiB
34Időlimit túllépés0/1582ms316 KiB
35Időlimit túllépés0/1600ms460 KiB
36Időlimit túllépés0/1592ms404 KiB
37Időlimit túllépés0/1586ms316 KiB
38Időlimit túllépés0/1583ms316 KiB
39Időlimit túllépés0/1531ms316 KiB
40Időlimit túllépés0/1533ms316 KiB