10135 2024. 03. 27 23:53:13 111 Turista járatok cpp17 Hibás válasz 0/100 172ms 75564 KiB
#include <bits/stdc++.h>
using namespace std;

#define int long long

signed main(){
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	int N,M,K;
	cin>>N>>M>>K;
	vector<vector<pair<int,int>>>g(N+1);
	for(int i=0;i<M;i++){
		int a,b;
		cin>>a>>b;
		g[a].emplace_back(b,i<K);
		g[b].emplace_back(a,i<K);
	}
	vector<int>v(N+1),w(N+1),u(N+1);
	auto dfs=[&](auto self,int i)->void{
		w[i]=i;
		for(auto[j,b]:g[i]){
			if(v[j]){
				if(v[j]>=v[i]-1){
					continue;
				}
				if(v[j]<v[w[i]]){
					w[i]=j;
				}
				if(b){
					u[j]=1;
				}
				continue;
			}
			v[j]=v[i]+1;
			self(self,j);
			if(v[w[j]]<v[w[i]]){
				w[i]=w[j];
			}
			if(b){
				if(w[j]==i){
					u[j]=1;
				}
				else{
					for(auto[k,_]:g[w[j]]){
						if(v[k]<v[w[j]]){
							continue;
						}
						u[k]=1;
					}
				}
			}
		}
	};
	v[1]=1;
	dfs(dfs,1);
	vector<int>ans;
	auto dfs2=[&](auto self,int i,int b)->void{
		if(b){
			ans.push_back(i);
		}
		for(auto[j,_]:g[i]){
			if(v[j]!=v[i]+1){
				continue;
			}
			self(self,j,b||u[j]);
		}
	};
	dfs2(dfs2,1,0);
	sort(ans.begin(),ans.end());
	cout<<ans.size()<<'\n';
	for(int i:ans){
		cout<<i<<' ';
	}
	cout<<'\n';
	return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
subtask1 0/0
1 Elfogadva 3ms 1956 KiB
2 Elfogadva 9ms 5084 KiB
subtask2 0/10
3 Elfogadva 3ms 2500 KiB
4 Elfogadva 3ms 2512 KiB
5 Elfogadva 3ms 2864 KiB
6 Hibás válasz 3ms 2824 KiB
7 Hibás válasz 3ms 3172 KiB
subtask3 0/10
8 Hibás válasz 3ms 3248 KiB
9 Hibás válasz 3ms 3328 KiB
10 Hibás válasz 3ms 3400 KiB
11 Hibás válasz 3ms 3624 KiB
12 Hibás válasz 4ms 4428 KiB
subtask4 0/10
13 Hibás válasz 7ms 5640 KiB
14 Hibás válasz 3ms 3892 KiB
15 Hibás válasz 3ms 4240 KiB
16 Hibás válasz 4ms 4432 KiB
17 Hibás válasz 157ms 62960 KiB
18 Hibás válasz 48ms 20624 KiB
19 Hibás válasz 64ms 25816 KiB
20 Hibás válasz 48ms 23404 KiB
subtask5 0/10
21 Hibás válasz 9ms 13880 KiB
22 Hibás válasz 3ms 11688 KiB
23 Elfogadva 3ms 11784 KiB
24 Hibás válasz 3ms 12060 KiB
25 Hibás válasz 90ms 45908 KiB
26 Hibás válasz 9ms 17292 KiB
27 Hibás válasz 8ms 17304 KiB
subtask6 0/60
28 Hibás válasz 3ms 15720 KiB
29 Elfogadva 3ms 15972 KiB
30 Hibás válasz 4ms 16164 KiB
31 Hibás válasz 4ms 16444 KiB
32 Hibás válasz 6ms 16796 KiB
33 Elfogadva 6ms 17120 KiB
34 Elfogadva 9ms 18536 KiB
35 Elfogadva 10ms 18732 KiB
36 Elfogadva 9ms 18984 KiB
37 Hibás válasz 172ms 75564 KiB
38 Hibás válasz 50ms 33392 KiB
39 Hibás válasz 48ms 34304 KiB
40 Hibás válasz 50ms 35204 KiB
41 Hibás válasz 48ms 36088 KiB
42 Hibás válasz 48ms 37112 KiB
43 Hibás válasz 48ms 37880 KiB
44 Hibás válasz 46ms 38800 KiB
45 Hibás válasz 64ms 43888 KiB
46 Hibás válasz 48ms 41040 KiB
47 Hibás válasz 48ms 41900 KiB
48 Hibás válasz 48ms 43060 KiB
49 Hibás válasz 48ms 43928 KiB
50 Hibás válasz 46ms 44820 KiB