2021 ICPC沈阳 B.Bitwise Exclusive-OR Sequence(位运算+图论)
Posted lwz_159
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021 ICPC沈阳 B.Bitwise Exclusive-OR Sequence(位运算+图论)相关的知识,希望对你有一定的参考价值。
题目描述
题目大意
有n个点和m个约束,每个约束包含三个数u,v,w,表示a[u]^a[v]=w.
求满足m个约束 并且 和最小的序列的和。
题目分析
这 很 明 显 是 一 个 图 论 问 题 , 对 于 每 个 约 束 u − v − w , 我 们 可 以 在 u 和 v 之 间 连 一 条 权 值 为 w 的 边 。 这很明显是一个图论问题,对于每个约束u-v-w,我们可以在u和v之间连一条权值为w的边。 这很明显是一个图论问题,对于每个约束u−v−w,我们可以在u和v之间连一条权值为w的边。
因 为 题 目 对 于 约 束 并 没 有 太 多 的 限 制 。 因 此 这 个 图 是 可 能 存 在 环 和 不 连 通 的 。 因为题目对于约束并没有太多的限制。因此这个图是可能存在环和不连通的。 因为题目对于约束并没有太多的限制。因此这个图是可能存在环和不连通的。
首 先 , 对 于 图 的 不 连 通 , 我 们 可 以 分 别 处 理 每 个 连 通 块 。 并 将 每 一 块 的 权 值 进 行 累 加 。 首先,对于图的不连通,我们可以分别处理每个连通块。并将每一块的权值进行累加。 首先,对于图的不连通,我们可以分别处理每个连通块。并将每一块的权值进行累加。
当 一 个 连 通 块 中 存 在 环 的 时 候 , 我 们 可 以 算 出 环 上 所 有 边 的 权 值 异 或 和 , 如 果 环 上 的 异 或 和 不 为 0 , 则 无 合 法 解 , 当一个连通块中存在环的时候,我们可以算出环上所有边的权值异或和,如果环上的异或和不为0,则无合法解, 当一个连通块中存在环的时候,我们可以算出环上所有边的权值异或和,如果环上的异或和不为0,则无合法解, 输 出 − 1 。 因 为 环 上 所 有 边 的 异 或 和 是 把 环 上 所 有 点 都 用 了 两 遍 , 因 此 环 上 的 异 或 和 应 该 是 0 。 输出-1。因为环上所有边的异或和是把环上所有点都用了两遍,因此环上的异或和应该是0。 输出−1。因为环上所有边的异或和是把环上所有点都用了两遍,因此环上的异或和应该是0。
除
去
这
两
种
情
况
,
剩
下
的
就
只
有
链
了
。
最
后
我
们
来
看
一
下
如
何
处
理
链
。
除去这两种情况,剩下的就只有链了。最后我们来看一下如何处理链。
除去这两种情况,剩下的就只有链了。最后我们来看一下如何处理链。
假
设
一
个
链
上
的
点
权
为
(
a
1
,
a
2
,
a
3
,
…
,
a
n
)
假设一个链上的点权为(a1,a2,a3,…,an)
假设一个链上的点权为(a1,a2,a3,…,an)
a
1
∧
a
2
=
w
1
a_1∧a_2=w_1
a1∧a2=w1
a
2
∧
a
3
=
w
2
a_2∧a_3=w_2
a2∧a3=w2
…
…
……
……
a
n
−
1
∧
a
n
=
w
n
−
1
a_n-1∧a_n=w_n-1
an−1∧an=wn−1
我 们 对 其 做 一 个 转 换 : 我们对其做一个转换: 我们对其做一个转换:
a
1
∧
a
2
=
w
1
a_1∧a_2=w_1
a1∧a2=w1
a
1
∧
a
3
=
w
1
∧
w
2
a_1∧a_3=w_1∧w_2
a1∧a3=w1∧w2
a
1
∧
a
4
=
w
1
∧
w
2
∧
w
3
a_1∧a_4=w_1∧w_2∧w_3
a1∧a4=w1∧w2∧w3
…
…
……
……
a
1
∧
a
n
=
w
1
∧
w
2
∧
…
∧
w
n
−
1
a_1∧a_n=w_1∧w_2∧…∧w_n-1
a1∧an=w1∧w2∧…∧wn−1
设 s i 为 w 1 − i 的 异 或 前 缀 和 , 我 们 再 移 一 下 项 设s_i为w_1-i的异或前缀和,我们再移一下项 设si为w1−i的异或前缀和,我们再移一下项
a
2
=
s
1
∧
a
1
a_2=s_1∧a_1
a2=s1∧a1
a
3
=
s
2
∧
a
1
a_3=s_2∧a_1
a3=s2∧a1
…
…
……
……
a
n
=
s
n
−
1
∧
a
1
a_n=s_n-1∧a_1
an=sn−1∧a1
因 此 , 我 们 只 需 要 确 定 第 一 个 数 a 1 , 即 可 算 出 所 有 的 其 它 的 点 的 点 权 。 因此,我们只需要确定第一个数a_1,即可算出所有的其它的点的点权。 因此,我们只需要确定第一个数a1,即可2021ICPC沈阳游记及2021年度总结