Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "bits/stdc++.h"
- using namespace std;
- const int N = 1e5+8;
- int vis[N], dist[N];
- vector < int > v[N], vv[N];
- long int dfs(int node){
- vis[node]= 1;
- long int cnt = 0;
- for(auto i : v[node]){
- if(!vis[i]){
- cnt = cnt + dfs(i);
- }
- }
- if(!cnt)return dist[node] = 1;
- else
- return dist[node] = ++cnt;
- }
- int main(){
- int m, n, j, i, l, r, a(0), b(0);
- scanf("%d %d", &n ,&m);
- for(i = 0; i < m; i++){
- scanf("%d%d", &l, &r);
- v[l].push_back(r);
- v[r].push_back(l);
- }
- dfs(1);
- for(i = 1; i <= n; i++)cout << dist[i] << ' ';
- return 0;
- }
Add Comment
Please, Sign In to add comment