제출 #1168895

#제출 시각아이디문제언어결과실행 시간메모리
1168895hamzabcMake them Meet (EGOI24_makethemmeet)C++20
34 / 100
3 ms584 KiB
#include <bits/stdc++.h> using namespace std; #define all(x) x.begin(), x.end() #define mod 1000000007 #define sp << " " << #define endl << '\n' long long int N, M; vector<vector<int>> graph; vector<int> p1, p2, p3; vector<int> vis; void dfs(int n, int parity){ vis[n] = true; int f = true; for (auto go : graph[n]){ if (vis[go]) continue; if (f && n == 0){ f = false; p1[go] = p1[0]; } if (parity){ p2[go] = p2[n]; }else{ p3[go] = p3[n]; } dfs(go, 1 - parity); } } int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin >> N >> M; graph.resize(N); p1.resize(N); p2.resize(N); p3.resize(N); vis.resize(N, false); for (int i = 0; i < M; i++){ int a, b; cin >> a >> b; graph[a].push_back(b); graph[b].push_back(a); } for (int i = 0; i < N; i++){ p1[i] = i + 1; p2[i] = i + 1; p3[i] = i + 1; } dfs(0, 0); cout << N * 6 endl; for (int i = 0; i < N * 2; i++){ for (int k = 0; k < N; k++) cout << p2[k] sp ""; cout endl; for (int k = 0; k < N; k++) cout << p3[k] sp ""; cout endl; for (int k = 0; k < N; k++) cout << p1[k] sp ""; cout endl; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...