10136 2024. 03. 27 23:55:22 111 Turista járatok cpp17 Hibás válasz 0/100 170ms 61104 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){
					for(auto[k,_]:g[i]){
						u[k]=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 1824 KiB
2 Elfogadva 10ms 4772 KiB
subtask2 0/10
3 Elfogadva 3ms 2280 KiB
4 Elfogadva 3ms 2444 KiB
5 Elfogadva 3ms 2660 KiB
6 Hibás válasz 3ms 2872 KiB
7 Hibás válasz 3ms 2976 KiB
subtask3 0/10
8 Hibás válasz 3ms 2960 KiB
9 Hibás válasz 3ms 2952 KiB
10 Hibás válasz 3ms 3088 KiB
11 Hibás válasz 3ms 3520 KiB
12 Hibás válasz 4ms 4528 KiB
subtask4 0/10
13 Hibás válasz 8ms 5536 KiB
14 Hibás válasz 3ms 3800 KiB
15 Hibás válasz 3ms 4016 KiB
16 Hibás válasz 4ms 4388 KiB
17 Hibás válasz 156ms 60384 KiB
18 Hibás válasz 46ms 15912 KiB
19 Hibás válasz 65ms 19956 KiB
20 Hibás válasz 48ms 16292 KiB
subtask5 0/10
21 Hibás válasz 9ms 6764 KiB
22 Hibás válasz 3ms 4456 KiB
23 Elfogadva 3ms 4488 KiB
24 Hibás válasz 3ms 4636 KiB
25 Hibás válasz 93ms 35760 KiB
26 Hibás válasz 9ms 6752 KiB
27 Hibás válasz 9ms 6820 KiB
subtask6 0/60
28 Hibás válasz 3ms 4920 KiB
29 Elfogadva 3ms 4812 KiB
30 Hibás válasz 4ms 5064 KiB
31 Hibás válasz 4ms 5312 KiB
32 Hibás válasz 4ms 5556 KiB
33 Elfogadva 6ms 5960 KiB
34 Elfogadva 9ms 7052 KiB
35 Elfogadva 10ms 7424 KiB
36 Elfogadva 9ms 7384 KiB
37 Hibás válasz 170ms 61104 KiB
38 Hibás válasz 48ms 16756 KiB
39 Hibás válasz 46ms 16776 KiB
40 Hibás válasz 46ms 16772 KiB
41 Hibás válasz 46ms 16788 KiB
42 Hibás válasz 48ms 16816 KiB
43 Hibás válasz 48ms 16808 KiB
44 Hibás válasz 48ms 16796 KiB
45 Hibás válasz 64ms 20600 KiB
46 Hibás válasz 48ms 16868 KiB
47 Hibás válasz 48ms 16772 KiB
48 Hibás válasz 48ms 16756 KiB
49 Hibás válasz 48ms 17052 KiB
50 Hibás válasz 46ms 17004 KiB