42972023-03-22 13:57:15horvathabelTestnevelés óracpp17Hibás válasz 1/50250ms121752 KiB
#include <bits/stdc++.h>
using namespace std;
vector<int> g[2000001];
vector<int> topo;
bool seen[2000001];
void dfs(int x){
	if (!seen[x]){
		seen[x]=true; 
		for (int edge:g[x]){
			dfs(edge);
		}
			topo.push_back(x);

	}
}
int main() {
	int n;
	cin>>n;
	int m;
	cin>>m;
	pair<int ,int> mx={0,0};
	vector<int>db(n+1);
	for (int i=0; i<m;i++){
		int x,y;
		cin>>x>>y; 
		db[x]++;
		if (db[x]>mx.first){
			mx={db[x],x};
		}
		g[x].push_back(y);
		g[y].push_back(x);
	}
	dfs(mx.second);
	cout<<1<<endl;
	reverse(topo.begin(), topo.end());
	for (int i:topo) cout<<i<<" "; 
}

RészfeladatÖsszpontTesztVerdiktIdőMemória
base1/50
1Hibás válasz0/037ms95536 KiB
2Hibás válasz0/046ms95704 KiB
3Hibás válasz0/0238ms111848 KiB
4Hibás válasz0/245ms96128 KiB
5Hibás válasz0/345ms96488 KiB
6Hibás válasz0/345ms96372 KiB
7Hibás válasz0/345ms96500 KiB
8Hibás válasz0/145ms96620 KiB
9Hibás válasz0/345ms96856 KiB
10Hibás válasz0/339ms97164 KiB
11Hibás válasz0/346ms97168 KiB
12Hibás válasz0/146ms97084 KiB
13Hibás válasz0/246ms97344 KiB
14Hibás válasz0/346ms97240 KiB
15Hibás válasz0/1216ms109108 KiB
16Hibás válasz0/3180ms108348 KiB
17Hibás válasz0/537ms98788 KiB
18Hibás válasz0/1250ms114844 KiB
19Részben helyes1/2208ms109368 KiB
20Hibás válasz0/3218ms121752 KiB
21Hibás válasz0/4203ms117960 KiB
22Hibás válasz0/4204ms118244 KiB