当前位置: 首页 > news >正文

题解:P11640 Graph

读完题我们就可以发现,所谓只能在不同颜色的点之间连边权为 \(1\) 的边。所以若 \(c_i\) 是偶数,则 \(a_i\) 一定和 \(b_i\) 同色。若 \(c_i\) 是奇数,则 \(a_i\) 一定和 \(b_i\) 异色。

所以,我们会发现,这似乎可以直接用扩展域并查集,也就是种类并查集来维护。

然后,不知为什么,光荣 MLE。

所以,我们考虑先把异色关系的边记录下来,同色关系就直接合并为一个连通块。

然后判定应为异色的 \(a_i\)\(b_i\) 是否在同一个连通块,若在同一个连通块,则不合法。

注意,若只有一个连通块,则所有 \(c_i\) 必须为 \(0\),否则不合法。而且,若 \(c_i\)\(0\),则 \(a_i\) 一定等于 \(b_i\),否则也不合法。

下面是代码环节:

#include<bits/stdc++.h>
using namespace std;
struct Node {int u, v;
} edge[1000005];
int t, n, m, f[1000005], cnt, num, num1;
bool flag;
int get_father(int x) {return f[x] == x ? x : f[x] = get_father(f[x]);
}
signed main() {ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);cin >> t;while (t --) {cin >> n >> m;for (int i = 1; i <= n; i ++) {f[i] = i;}flag = true;for (int i = 1; i <= m; i ++) {int x, y, z;cin >> x >> y >> z;if (z & 1) {edge[++cnt].u = x;edge[cnt].v = y;} else {int fx = get_father(x), fy = get_father(y);f[fx] = fy;}if (z == 0) {if (x != y) {flag = false;}num ++;}}for (int i = 1; i <= cnt; i ++) {int fx = get_father(edge[i].u), fy = get_father(edge[i].v);if (fx == fy) {flag = false;}}for (int i = 1; i <= n; i ++) {if (f[i] == i) {num1 ++;}}if (num1 == 1 && num != m) {flag = false;}num1 = 0;cnt = 0;num = 0;if (flag) {cout << "Yes\n";} else {cout << "No\n";}}return 0;
}
http://www.jsqmd.com/news/744292/

相关文章:

  • 新手也能搞定的红日靶场vulnstack1实战:从外网打点到内网横向移动(附完整命令)
  • Python点云处理总报错?3步定位坐标系错位、法向量翻转、体素滤波溢出(附可复用调试Checklist)
  • BrowserOS:基于Chromium内核的开源AI浏览器操作系统深度解析
  • 如何5分钟突破1Fichier下载限制:终极下载加速工具完全指南
  • DDrawCompat:让经典DirectX游戏在现代Windows系统上流畅运行的终极解决方案
  • 题解:CF1635E Cars
  • 2026年收藏10款主流论文降AI工具(含免费降AI率版) - 降AI实验室
  • 从零构建记忆增强系统:基于间隔重复与知识图谱的实践
  • 如何在 Taotoken 平台查看与管理您的 token 使用量与账单明细
  • PTA天梯赛L1-064:手把手教你用C++写一个‘估值一亿’的AI对话程序(附完整代码)
  • LinkSwift网盘直链下载助手:告别下载限速的八大网盘全能解决方案
  • 5步搞定音乐元数据混乱:163MusicLyrics智能整理全攻略
  • C++ SFML实现像素小猫光标追踪:从精灵动画到游戏循环实践
  • 【工业级Python轻量化落地白皮书】:覆盖PyTorch/TensorFlow/Keras三大框架,含实测吞吐量、精度衰减率与内存占用对比表(2024Q2最新基准)
  • 观察大模型API在高峰时段的响应成功率变化
  • 六西格玛证书可以挂靠吗? - 众智商学院官方
  • 题解:P11642 【MX-X8-T1】「TAOI-3」幸运草
  • ClawLock插件系统开发指南:从架构解析到实战应用
  • Verilog调试实战:用force和release快速定位FPGA仿真中的‘幽灵信号’
  • AppleRa1n终极指南:3分钟学会iOS设备激活锁绕过
  • 接口自测-1777696985
  • 告别局域网限制:手把手教你用KKPrinter源码搭建跨网段远程打印服务(Win10/11实测)
  • 使用Taotoken调用Codex模型的实际延迟与稳定性体验分享
  • 本地部署内部即时聊天IM软件选型:企业容易忽略的5个判断误区 - 小天互连即时通讯
  • 开源威胁情报自动化响应框架:从原理到实战部署指南
  • YOLOv11 改进 - 即插即用 中小目标检测飙升:Hyper 超图赋能YOLO:轻量级设计实现跨层级信息交互,增强复杂场景感知
  • Go语言微信机器人开发实战:从事件驱动架构到智能对话集成
  • OpenMemory:超越RAG的认知记忆引擎,为AI应用构建持久化智能记忆
  • nSkinz皮肤修改器:CS:GO武器皮肤免费自定义终极指南
  • 别再只画箱图了!用R的ggpubr玩转α多样性差异分析:Wilcoxon检验与高级可视化技巧