Submission #743399

#TimeUsernameProblemLanguageResultExecution timeMemory
743399Dan4LifeSenior Postmen (BOI14_postmen)C++17
38 / 100
1084 ms23244 KiB
#include <bits/stdc++.h>
using namespace std;
#define sz(a) (int)a.size()
#define pb push_back
const int mxN = (int)5e5+10;
int n, m, vis[mxN], vis1[mxN], nx[mxN];
vector<pair<int,int>> v, adj[mxN];

void dfs(int s){
	if(vis[s]==1){
		int p = s;
		while(vis[p]) cout<<p<<" ", vis[p]=0, p = nx[p];
		cout << "\n";
	} int pos = sz(adj[s])-1;
	while(pos>=0){
		auto [u,e] = adj[s][pos--];
		if(!vis1[e]) vis1[e]=vis[s]=1, nx[s]=u, dfs(u);
	}
}

int32_t main(){
	cin >> n >> m;
	for(int i = 0; i < m; i++){
		int a, b; cin >> a >> b;
		adj[a].pb({b,i}); adj[b].pb({a,i});
	}
	dfs(1);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...