CF228E-The Road to Berland is Paved With Good Intentions

news/2025/12/4 13:22:17/文章来源:https://www.cnblogs.com/NDAKJin/p/19306988

CF228E-The Road to Berland is Paved With Good Intentions

题目大意

一张 \(n\) 个节点, \(m\) 条边的无向图,初始这些边有 \(0,1\) 边权。你可以进行操作是,选择一个节点,将所有连接该节点的边权取反。判断你是否可以通过 \(n\) 次以内操作,将所有边全部变成 \(1\)

题解

可以发现一个点连续取两次及以上是没有意义的。所以问题转化为每个点要不要取的问题。对于每条边,如果初始边权为 \(1\) ,那么两端的点要么都取,要么都不取才可以。如果初始边权为 \(0\) ,那么一边取一边不取才行。所以问题由此转化成了一个 \(2SAT\) 问题。

#include<bits/stdc++.h>
#define ios ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define umap unordered_map
#define pq(x) priority_queue<x>
#define ppq(x) priority_queue<x,vector<x>,greater<x>>
#define endl '\n'
using namespace std;
using i128 = __int128;
const int mod =1e9+7;
template <typename T>void read(T&x){x=0;int f = 1;char c=getchar();for(;!isdigit(c);c=getchar())if(c=='-')f=-1;for(;isdigit(c);c=getchar())x=(x<<1)+(x<<3)+(c^48);x*=f;
}
template <typename T>void print(T x) {if (x < 0) { putchar('-'); x = -x; }if (x > 9) print(x / 10);putchar(x % 10 + '0');
}
#define int long long
class TwoSAT {
public:int n; int total_nodes;  vector<vector<int>> adj;  vector<int> dfs_num; vector<int> dfs_low; vector<bool> in_stack;  stack<int> stk; vector<int> comp; int dfs_counter;  int comp_cnt;  vector<bool> assignment;  void tarjan(int u) {dfs_num[u] = dfs_low[u] = ++dfs_counter;stk.push(u);in_stack[u] = true;for (int v : adj[u]) {if (dfs_num[v] == 0) {tarjan(v);dfs_low[u] = min(dfs_low[u], dfs_low[v]);} else if (in_stack[v]) {dfs_low[u] = min(dfs_low[u], dfs_num[v]);}}if (dfs_low[u] == dfs_num[u]) {int v;do {v = stk.top();stk.pop();in_stack[v] = false;comp[v] = comp_cnt;} while (v != u);comp_cnt++;}}int node(int x) const {return x > 0 ? 2 * (x - 1) : 2 * (-x - 1) + 1;}TwoSAT(int n) : n(n), total_nodes(2 * n) {adj.resize(total_nodes);dfs_num.resize(total_nodes, 0);dfs_low.resize(total_nodes, 0);in_stack.resize(total_nodes, false);comp.resize(total_nodes, -1);assignment.resize(n, false);dfs_counter = 0;comp_cnt = 0;}void add(int a, int b) {int a_node = node(a);int b_node = node(b);adj[a_node].push_back(b_node);adj[b_node].push_back(a_node);}bool solve() {for (int i = 0; i < total_nodes; i++) {if (dfs_num[i] == 0) {tarjan(i);}}for (int i = 0; i < total_nodes; i += 2) {if (comp[i] == comp[i ^ 1]) {return false;  }}for (int i = 0; i < total_nodes; i += 2) {assignment[i / 2+1] = comp[i] < comp[i ^ 1];}return true;}
};
const int N=5e5+5;
const int M=2e6+5;
inline void solve()
{int n,m;cin>>n>>m;TwoSAT t(n);for(int i=1;i<=m;i++){int u,v,w;cin>>u>>v>>w;if(w) t.add(u,v),t.add(-u,-v);else t.add(-u,v),t.add(u,-v);}if(!t.solve()){cout<<"Impossible"<<endl;}else{vector<int> ans;for(int i=1;i<=n;i++){if(t.assignment[i]) ans.push_back(i);}cout<<ans.size()<<endl;for(auto i:ans) cout<<i<<" ";}
//	for(int i=0;i<2*n;i++) cout<<t.comp[i]<<" ";
}signed main()
{ios;int T=1;
//	cin>>T;for(;T--;) solve();return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/986772.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

吱吱即时通讯软件打造数据安全堡垒,保障企业通讯数据安全

在数字化转型加速的今天,商业机密、客户数据、产品设计等敏感信息通过即时通讯软件流转时,既面临外部黑客的网络攻击,也承受着内部员工泄露的风险。吱吱即时通讯软件以“私有化部署、全生命周期保障”为核心,打造出…

Parse error: syntax error, unexpected :, expecting {

错误描述:Parse error: syntax error, unexpected :, expecting { in www\core\function\handle.php on line 130问题原因: 此错误通常是由 PHP 版本不兼容引起的。PbootCMS 最新版本要求 PHP 环境为 PHP 7.x 或更高…

(6)普中A2 51单片机矩阵键盘和密码锁 - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

P5186 [COCI 2009_2010 #4] OGRADA

Luogu 题目传送门 双倍经验,一摸一样的题:Luogu 题目传送门2 这是我的一个有趣的做题故事,在洛谷打完卡(运势 凶 )后,随机跳转一题,并到了这一题。 \(\;\) 题目大意 一个叫 Matija 的人打算用一个为 X 大小的滚…

2025年反应釜定制厂家实力推荐,看看哪家信誉好?

为帮科研院所、企业实验室高效锁定适配自身需求的反应釜设备合作伙伴,避免选型走弯路,我们从设备核心性能(如控温精度、安全防护)、定制化能力(含工艺适配性、模块化设计)、全周期服务质量(覆盖方案设计到售后维…

HTML5与CSS3 API文档及强大的技术书籍资源包

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025年中国五大内磁喇叭厂家推荐:看哪家品质可靠

本榜单依托电声行业全维度市场调研与真实客户口碑,深度筛选出十家标杆内磁喇叭生产企业,重点考量技术专利、产能规模、认证体系及行业应用案例四大核心维度,为下游企业选型提供客观依据,助力精准匹配适配的内磁喇叭…

2025年度口碑好的金相检测分析服务商TOP5权威推荐:看看

金属材料检测是制造业质量管控的核心环节,而金相检测作为材料医生,能精准识别晶粒缺陷、焊接裂纹等隐患,直接影响产品安全与寿命。2024年行业数据显示,国内金属检测市场规模超300亿元,年增速28%,但32%的企业投诉…

PbootCMS模板如何调用友情链接(PbootCMS友情链接调用指南:标签与参数详解)

友情链接是网站中常见的功能模块,用于展示合作伙伴或推荐站点的链接。在PbootCMS中,通过内置的友情链接标签,可以灵活地调用和展示友情链接信息。本文将详细介绍如何使用PbootCMS的友情链接标签,并提供示例代码。友…

2025温汤镇温泉房产TOP5权威推荐:深度测评指南,甄选度

随着康养度假需求激增,2024年温泉房产市场规模突破600亿元,年增速达38%,但85%的项目仅停留在泡池+按摩的基础服务,同质化严重;同时,23%的购房者投诉集中在社区配套不完善、康养服务缺失、无障碍设计不到位三大痛…

2025年中国五大内磁喇叭工厂推荐:哪家口碑好?

本榜单依托全维度市场调研与真实行业口碑,深度筛选出十家标杆企业,为企业选型提供客观依据,助力精准匹配适配的内磁喇叭供应商伙伴。 TOP1 推荐:深圳市泰声源电子有限公司 推荐指数:★★★★★ 口碑评分:国内首推…

12月最新推荐!宠物饮水机方案商权威排行榜:聚焦智能健康养宠,IoT平台与专业品牌深度解析

随着宠物家庭地位的提升和“它经济”的持续升温,智能养宠已成为不可逆的潮流。智能宠物饮水机,作为解决宠物饮水健康难题的核心产品,正从基础功能型向数据驱动、健康预警的智慧伴侣演进。市场在快速增长的同时,也面…

2025年上海注册公司费用及收费标准TOP5推荐:注册公司流

TOP1 推荐:壹隆注册公司 推荐指数:★★★★★ 口碑评分:上海注册公司领域性价比标杆服务商 专业能力:作为沪上17年老牌财税机构,壹隆注册公司深度整合工商注册全流程资源,核心优势覆盖成本、效率、合规三大创业痛…

PbootCMS模板怎么嵌套引用其他模版文件(PbootCMS 模板嵌套引用其他模板文件的方法)

1. 功能概述 在 PbootCMS 中,可以通过 {include} 标签实现模板文件的嵌套引用。此功能适用于将公共部分(如头部、尾部、侧边栏等)提取到独立文件中,从而提高代码复用性和维护效率。2. 实现方法 方法一:使用 {incl…

PbootCMS如何实现上传的文件使用原名称(PbootCMS 二开实现非图片文件使用原名称保存的方法)

1. 功能概述 PbootCMS 默认会对上传的文件(如图片、文档、压缩包等)进行重命名后保存,但某些场景下(如文档或压缩包),用户可能希望保留文件的原始名称。本文将介绍如何通过二次开发实现非图片类文件使用原名称保…

神州数码AP密码

WL8200-T2室外AP,WEBUI密码为admin/admin,命令行(telnet 端口号23)密码为admin/dcn_debug或wifi_debug,get system detail命令可查看设备信息

2025年五大乳化泵服务厂商推荐排行榜,实力乳化泵供应商选择

在工业生产的心脏环节,乳化泵作为均质乳化的核心设备,其性能直接决定产品品质、生产效率与合规性。然而,市场上80%厂商依赖传统技术陷入低价战、原材料涨价致交付延期、环保政策倒逼技术升级等痛点,让企业在选择乳…

PbootCMS多选按钮前台页面如何循环|内容多选遍历(PbootCMS 多选按钮前台页面循环遍历方法)

1. 功能概述 在 PbootCMS 中,多选字段(如标签、分类等)可以直接输出为一段带英文逗号的字符串,但这种方式不够美观且难以满足前端样式需求。通过 {pboot:checkbox} 标签,可以对多选字段进行循环遍历,从而实现更灵…

2025年五大靠谱的隔离式安全栅推荐,专业实力品牌全解析

在工业自动化领域,隔离式安全栅是保障危险工况信号传输安全的核心设备,直接关系到生产系统的稳定与人员安全。面对市场上鱼龙混杂的产品,如何挑选有实力、专业且靠谱的隔离式安全栅?以下结合行业调研与用户反馈,为…

2025年惠州十大奢侈品名包回收店排行榜,推荐回收价高的奢侈

为帮奢侈品持有者高效锁定附近的高价回收门店,避免遭遇虚报高价后压价鉴定不专业导致价值低估等坑,我们从价格透明度、鉴定专业性、交易安全性、服务便捷性、客户口碑五大维度,对惠州本地15家奢侈品名包回收机构展开…