PAT甲级 1154 Vertex Coloring (25 分)

本文介绍了一种用于检查图中所有相邻节点颜色是否不同的算法。通过读取节点数量、边的数量及边连接的节点,再输入各节点的颜色,该算法能够判断图是否满足每两个相连节点颜色不同的条件,并输出结果。
部署运行你感兴趣的模型镜像

题意

检查一幅图是否所有的相邻两点颜色都不一样。

代码

#include <bits/stdc++.h>
using namespace std;
const int N = 1e4 + 10;
typedef long long ll;

struct edge{
	int u, v;
}arr[N];
int col[N];

int main(void)
{
	int i, j, temp;
	int n, m;
	scanf("%d%d", &n, &m);
	for (i = 1; i <= m; i++)
	{
		scanf("%d%d", &arr[i].u, &arr[i].v);
	}
	
	int q;
	scanf("%d", &q);
	while (q--)
	{
		set<int> se;
		for (i = 0; i < n; i++)
		{
			scanf("%d", col+i);
			se.insert(col[i]);
		}
		for (i = 1; i <= m; i++)
		{
			if (col[arr[i].u] == col[arr[i].v])
			{
				printf("No\n");
				break;
			}
		}
		if (i == m+1)
			printf("%d-coloring\n", se.size());
	}
}

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值