168722025-05-15 07:48:53BucsMatePletykálkodáscpp17Hibás válasz 13/10039ms1844 KiB
#include <iostream>
#include <vector>

using namespace std;

const int MAXN = 7001;

vector<vector<int>> adj(MAXN);
vector<pair<int, int>> ans;
bool vis[MAXN];

void dfs(int node) {
	vis[node] = true;
	for (int i = 0; i < adj[node].size(); i++) {
		int newNode = adj[node][i];
		if (!vis[newNode]) {
			dfs(newNode);
			ans.push_back({node, newNode});
		}
	}
}

void solve() {
	dfs(1);
	cout << 2*ans.size()-1 << endl;
	for(int i = 0; i < ans.size(); i++){
        cout << ans[i].first << " " << ans[i].second << endl;
	}
	for(int i = ans.size()-2; i >= 0; i--){
        cout << ans[i].first << " " << ans[i].second << endl;
	}
}

int main() {
	int N, M;
	cin >> N >> M;
	if (N == 1) {
		cout << "0\n";
		return 0;
	}
	for (int i = 0; i < M; i++) {
		int u, v;
		cin >> u >> v;
		adj[u].push_back(v);
		adj[v].push_back(u);
	}
	solve();
	return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms564 KiB
2Elfogadva1ms564 KiB
3Hibás válasz4ms568 KiB
subtask20/9
4Elfogadva1ms564 KiB
5Elfogadva1ms564 KiB
6Hibás válasz1ms564 KiB
subtask313/13
7Elfogadva29ms1024 KiB
8Elfogadva29ms1072 KiB
9Elfogadva29ms1024 KiB
subtask40/16
10Hibás válasz10ms820 KiB
11Hibás válasz10ms1012 KiB
12Hibás válasz10ms932 KiB
subtask50/25
13Hibás válasz2ms564 KiB
14Hibás válasz2ms588 KiB
15Hibás válasz2ms564 KiB
16Elfogadva2ms756 KiB
17Elfogadva2ms564 KiB
18Elfogadva2ms568 KiB
19Hibás válasz1ms564 KiB
subtask60/13
20Hibás válasz8ms680 KiB
21Hibás válasz8ms720 KiB
22Hibás válasz7ms564 KiB
23Elfogadva12ms808 KiB
24Elfogadva8ms564 KiB
25Elfogadva8ms564 KiB
26Hibás válasz8ms568 KiB
subtask70/24
27Hibás válasz39ms1588 KiB
28Hibás válasz39ms1588 KiB
29Hibás válasz39ms1844 KiB
30Elfogadva39ms1548 KiB
31Elfogadva37ms1332 KiB
32Elfogadva34ms1080 KiB
33Elfogadva32ms1076 KiB
34Elfogadva34ms1076 KiB
35Hibás válasz32ms1332 KiB
36Hibás válasz32ms1076 KiB
37Hibás válasz34ms1088 KiB