제출 #1135642

#제출 시각아이디문제언어결과실행 시간메모리
1135642AvianshIzlet (COI19_izlet)C++20
0 / 100
412 ms589824 KiB
#include <bits/stdc++.h> using namespace std; void dfs(int st,vector<int>(&g)[],int p, int col[],int s){ col[st]=s; for(int i : g[st]){ if(i==p) continue; dfs(i,g,st,col,s); } } signed main(){ ios::sync_with_stdio(0); cin.tie(0); int s; cin >> s; assert(s==1); int n; cin >> n; int grid[n][n]; vector<int>g[n]; for(int i = 0;i<n;i++){ for(int j = 0;j<n;j++){ cin >> grid[i][j]; if(grid[i][j]==1&&i!=j){ g[i].push_back(j); } } } int col[n]; fill(col,col+n,0); dfs(0,g,-1,col,1); for(int i = 1;i<n;i++){ if(col[i]){ continue; } dfs(i,g,-1,col,2); g[0].push_back(i); g[i].push_back(0); } for(int i : col){ cout << i << " "; } cout << "\n"; for(int i = 0;i<n;i++){ for(int j : g[i]){ if(j>i){ cout << i+1 << " " << j+1 << "\n"; } } } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...