记录编号 608628 评测结果 AAAAAAWWWAAAAAAAAAAAAAAAAAAAAWAAAAAAAAWWWWWWWWWWWA
题目名称 4183.彩色道路 最终得分 70
用户昵称 Gravatarwdsjl 是否通过 未通过
代码语言 C++ 运行时间 4.552 s
提交时间 2025-10-28 15:15:11 内存使用 16.87 MiB
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;

const int N = 2e5+10;

int vis[N],c[N],n,m;
vector<pair<int,int>> e[N];

void dfs(int u,int dep){
	vis[u]=1;
	for(auto p:e[u]){
		if(!vis[p.first]){
			c[p.second]=dep%2;
			dfs(p.first,dep+1);
		}
	} 
}

int main(){
	freopen("paintoads.in","r",stdin);
	freopen("paintoads.out","w",stdout); 
	scanf("%d%d",&n,&m);
	for(int i=1;i<=m;i++){
		c[i]=-1;
		int u,v;
		scanf("%d%d",&u,&v);
		e[u].push_back(make_pair(v,i));
		e[v].push_back(make_pair(u,i));
	}
	for(int i=1;i<=n;i++){
		if(!vis[i])dfs(i,0);
	}
	for(int i=1;i<=m;i++){
		if(c[i]==-1)printf("G");
		else if(c[i]==1)printf("B");
		else printf("R");
	}
	return 0;
}