国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C. Andryusha and Colored Balloons

2019-11-06 06:47:41
字體:
來源:轉載
供稿:網友

題意:對于n個頂點,n-1條邊的圖形,給n個點染色,每連續的3點的顏色不相同,求需要最小顏色數量,并給出染色情況。

最小顏色數量其實,為 min(點的度+1)。對于某點i染色來說,記錄i前的顏色,i的顏色,i相鄰的點的顏色和前兩者不相同。

#include<bits/stdc++.h>using namespace std;vector<int> G[200005];int col[200005],par[200005];int main(){ int n;scanf("%d",&n); for(int i=1;i<n;i++) { int x,y;scanf("%d%d",&x,&y); G[x].push_back(y); G[y].push_back(x); } queue<int> Q; col[1]=1; par[1]=1; Q.push(1); int k = -1; while(!Q.empty()) { int node = Q.front(); Q.pop(); int num = 1; for(int i=0;i<G[node].size();i++) { if(!col[ G[node][i] ]) { if(col[node] == num || col[ par[node] ] == num) num++; if(col[node] == num || col[ par[node] ] == num) num++; col[ G[node][i] ] = num; k = max(k,num); par[ G[node][i] ] = node; num++; Q.push(G[node][i]); } } }
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大宁县| 额尔古纳市| 玉溪市| 太湖县| 南华县| 海城市| 贺兰县| 许昌县| 望奎县| 鸡东县| 台东市| 永川市| 商水县| 北碚区| 类乌齐县| 富源县| 长顺县| 会东县| 剑阁县| 桐梓县| 灵石县| 林周县| 休宁县| 荥经县| 仙游县| 清水县| 平湖市| 通榆县| 确山县| 石台县| 阳谷县| 长顺县| 上犹县| 新宁县| 衡山县| 武强县| 安化县| 隆回县| 巴东县| 麟游县| 房山区|