首页 > 其他分享 >AGC016D XOR Replace(并查集)

AGC016D XOR Replace(并查集)

时间:2022-09-27 11:00:05浏览次数:79  
标签:XOR 查集 AGC016D 异或 序列 边数 Replace

AGC016D XOR Replace

一个序列,一次操作可以将某个位置变成整个序列的异或和。问最少几步到达目标序列。\(n \le 100000\)。

CODE

令最后一个数是初始异或和然后每次操作就是交换当前数和最后一个数。

忽略 \(a_i = b_i\) 的位置。

如果所有数互不相同,则答案很明显是 \(a_i\) 和 \(b_i\) 连边以后的边数 \(+\) 连通块个数。

否则会发现比如

0 2 2 3 3 (0)
2 0 3 2 3 (0)

这样的可以先用第一个环换出 \(2\) 来解决第二个环在换回去答案就是 \(4\)。所以把权值当做点,连边,答案就是边数 \(+\) 权值连通块个数(对于最后一个数要精细处理,是否 \(-1\) 取决于处理方式)。

标签:XOR,查集,AGC016D,异或,序列,边数,Replace
From: https://www.cnblogs.com/Pizza1123/p/16733805.html

相关文章

  • 路由多次执行相同push|replace问题
    一、场景项目中实现商品搜索功能,用户可以从导航栏点击分类或搜索框输入关键词搜索商品,通过编程式导航携带参数给Search页面。此时用户可能多次点击同一分类或者搜索同一关......
  • CF 1720 D1. Xor-Subsequence (easy version)
    传送门:Xor-Subsequence(easyversion)思路:这个问题的描述类似最长不降子序列,不难想到可以设\(dp[i]\)为以\(a[i]\)结尾的最长子序列,进而得到递推方程:\[dp[i]=ma......
  • Fiddler抓包15-使用urlreplace 替换请求url地址
    前言在前后端分离,前端独立开发过程中,需对本地ip地址转发到其它ip上,那么需用到本地代理。我们可以使用fiddler的urlreplace命令替换请求url地址,到达转发请求的目的。u......
  • Typescript类型体操 - ReplaceKeys
    题目中文实现一个ReplaceKeys类型,这个类型可以替换联合类型中指定属性的类型,如果联合类型中的某个类型没有这个属性,那就跳过;ReplaceKeys接受3个泛型参数.例如......
  • 并查集优化
    并查集及其优化并查集可以动态地连通两个点,可以非常快速判断两个点是否连通。假设存在n个节点,我们先将所有结点的leader标为自身;每次连接节点i和j时,我们可以将i......
  • CF1722G - Even-Odd XOR
    CF1722G-Even-OddXORG.Even-OddXORGivenaninteger\(n\),findanyarray\(a\)of\(n\)distinctnonnegativeintegerslessthan\(2^{31}\)suchthattheb......
  • Day_1(并查集朋友圈、字典序排序)
    1.并查集朋友圈:找出最多的一个圈子内有多少用户!id[](表示当前节点的父节点)nodeNum[](表示当前节点为根的那一组节点数量)importjava.util.Scanner;//并查集class......
  • replace()和replaceAll()函数
    replace()和replaceAll()函数replace函数定义和用法replace()方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。返回值一个新的字符......
  • 高清地图转换(xord转apollo的bin文件)
    目标将carla中的OpenDrive地图(carla\Unreal\CarlaUE4\Content\Carla\Maps\OpenDrive)转换为Apollo中可识别的地图格式(bin与txt文件)用到的软件python的imap_box包、apol......
  • Typescript类型体操 - ReplaceAll
    答案中文实现ReplaceAll<S,From,To>将一个字符串S中的所有子字符串From替换为To。例如typereplaced=ReplaceAll<'types','',''>//期望是'types'......