蓝桥杯3170: 蓝桥杯2023年第十四届省赛真题-反异或 01 串题解 (初始01串操作)

痛心疾首 算法基础篇 63 0
不断提升技能,才能在职场中立于不败之地!全网最全C++题库,助您成为编程领域的佼佼者。
初始有一个空的 01 串,每步操作可以将 0 或 1 添加在左侧或右侧,也可以对整个串进行反异或操作: 取 s. ′ = s ⊕ rev,其中 s 是目前的 01 串,⊕ 表示逐位异或,rev 代表将 s 翻转,也就是说取中心位置并交换所有对称的两个位置的字符,例如,rev = 1010 rev = 010 rev = 1100,反异或操作最多使用一次,给定一个 01 串 T,问最少需要添加多少个 1 才能从一个空 01 串得到 T。

初始有一个空的 01 串,每步操作可以将 0 或 1 添加在左侧或右侧。也可以对整个串进行反异或操作: 取 s ′ = s ⊕ rev(s),其中 s 是目前的 01 串,⊕ 表示逐位异或,rev(s) 代表将 s 翻转,也就是说取中心位置并交换所有对称的两个位置的字符。例如,rev(0101) = 1010 rev(010) = 010 rev(0011) = 1100。 反异或操作最多使用一次(可以不用,也可以用一次)。 给定一个 01 串 T,问最少需要添加多少个 1 才能从一个空 01 串得到 T。 在本题中 0 可以添加任意个。

蓝桥杯3170: 蓝桥杯2023年第十四届省赛真题-反异或 01 串题解
(初始01串操作)-第1张图片-东莞河马信息技术
(图片来源网络,侵删)
不断学习,不断挑战,才能在编程领域中脱颖而出!全网最全C++题库,助您成为编程高手!

标签: 蓝桥杯3170: 蓝桥杯2023年第十四届省赛真题-反异或 01 串题解