102822024-03-29 22:02:18111Pletykálkodáscpp17Futási hiba 13/1008ms5792 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;
	cin>>N>>M;
	if(M!=N-1){
		return 1;
	}
	vector<vector<int>>g(N+1);
	for(int i=0;i<M;i++){
		int a,b;
		cin>>a>>b;
		g[a].push_back(b);
		g[b].push_back(a);
	}
	auto dfs1=[&](auto self,int i,int p)->void{
		g[i].erase(remove(g[i].begin(),g[i].end(),p),g[i].end());
		for(int j:g[i]){
			self(self,j,i);
		}
	};
	dfs1(dfs1,1,0);
	vector<pair<int,int>>ans;
	int l=0;
	auto dfs2=[&](auto self,int i)->void{
		for(int j:g[i]){
			self(self,j);
			ans.emplace_back(i,j);
			l=j;
		}
	};
	dfs2(dfs2,1);
	auto dfs3=[&](auto self,int i)->void{
		for(int j:g[i]){
			ans.emplace_back(i,j);
			if(i==1&&j==l){
				ans.pop_back();
			}
			self(self,j);
		}
	};
	dfs3(dfs3,1);
	cout<<ans.size()<<'\n';
	for(auto[a,b]:ans){
		cout<<a<<' '<<b<<'\n';
	}
	return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1832 KiB
2Futási hiba3ms2024 KiB
3Futási hiba3ms2240 KiB
subtask20/9
4Futási hiba3ms2472 KiB
5Futási hiba3ms2704 KiB
6Futási hiba3ms2920 KiB
subtask313/13
7Elfogadva8ms4836 KiB
8Elfogadva8ms5068 KiB
9Elfogadva8ms5404 KiB
subtask40/16
10Futási hiba3ms3932 KiB
11Futási hiba3ms3968 KiB
12Futási hiba3ms3988 KiB
subtask50/25
13Futási hiba3ms4080 KiB
14Futási hiba3ms4112 KiB
15Futási hiba3ms4108 KiB
16Futási hiba3ms4204 KiB
17Futási hiba3ms4332 KiB
18Futási hiba3ms4424 KiB
19Futási hiba3ms4656 KiB
subtask60/13
20Futási hiba3ms4676 KiB
21Futási hiba3ms4956 KiB
22Futási hiba3ms5048 KiB
23Futási hiba3ms5296 KiB
24Futási hiba3ms5272 KiB
25Futási hiba3ms5044 KiB
26Futási hiba3ms5336 KiB
subtask70/24
27Futási hiba3ms5432 KiB
28Futási hiba3ms5456 KiB
29Futási hiba3ms5476 KiB
30Futási hiba3ms5364 KiB
31Futási hiba3ms5456 KiB
32Futási hiba3ms5468 KiB
33Futási hiba3ms5492 KiB
34Futási hiba3ms5520 KiB
35Futási hiba3ms5468 KiB
36Futási hiba3ms5716 KiB
37Futási hiba3ms5792 KiB