Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals
2017-03-06 20:30
423 查看
C题思路:生成树上的dfs,完全没见过,留作复习
代码:
代码:
#include<stdio.h> #include<iostream> #include<string.h> #include<algorithm> #include<queue> #include<string> #include<vector> #define maxn 210000 using namespace std; int n; vector<int>aaa[maxn]; int power[maxn]; int color[maxn]; void dfs(int x, int fa) { //对第x个节点的子节点们开始染色,x的父节点是fA int c = 1; for (int i = 0; i < aaa[x].size(); i++) { int temp = aaa[x][i]; if (color[temp] != 0)continue; while (c == color[x] || c == color[fa])c++; color[temp] = c; dfs(temp, x); c++; } } int ans; int main() { memset(color, 0, sizeof(color)); memset(power, 0, sizeof(power)); ans = 0; scanf("%d", &n); int a, b; for (int i = 1; i < n; i++) { scanf("%d %d", &a, &b); power[a]++; power[b]++; ans = max(ans, max(power[a], power[b])); aaa[a].push_back(b); aaa[b].push_back(a); } ans++; cout << ans << endl; dfs(1, 0); for (int i = 1; i <= n; i++) { if (i != 1)printf(" "); printf("%d", color[i]); } printf("\n"); }
相关文章推荐
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals )D. Innokenty and a Football League(2-sat)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) B.(三分)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) A. Andryusha and Socks
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) B. The Meeting Place Cannot Be Changed
- Codeforces Round #403 (Div. 1, based on Technocup 2017 Finals) A. Andryusha and Colored Balloons
- 【三分】Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) B. The Meeting Place Cannot Be Changed
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) C Andryusha and Colored Balloons
- 【贪心】【DFS】Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) C. Andryusha and Colored Balloons
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)【A,B,C】
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)A模拟 B三分 C dfs D map
- 【2-SAT】Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) D. Innokenty and a Football League
- Codeforces Round #403 (Div. 1, based on Technocup 2017 Finals)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) 题解(ABCDE) (二分,dfs序,数据结构)
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) B. The Meeting Place Cannot Be Change
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) A
- Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) A.B.C