首页 > 其他分享 >XOR和路径

XOR和路径

时间:2024-02-17 20:55:22浏览次数:15  
标签:xor 路径 样本空间 权值 XOR DP

一眼无穷嵌套DP

设\(f[i]\)表示从\(i\)到\(N\)的期望

然后你会发现推不走,为什么?因为乘法对异或没有分配率!

但是不要怀疑我们的整体套路,我们应该从位运算的另一trick入手:考虑每一位

试想,如果我们列出了所有路径的样本空间(这当然是不可能的),知道了每个样本空间的xor和,乘以对应的概率并求和那么就是答案

对于每一个样本空间的xor和,我们将其每一位拆开,显然对于第\(i\)位,只由这个空间里面每个边权的权值的第\(i\)位影响,所以我们对每一位进行无穷嵌套DP,然后最后加总也是答案

于是我们枚举bit,把每条边的权值换为其对应的第\(i\)位数字,然后求解到达\(N\)的xor和为\(1\)的概率是多少即可

标签:xor,路径,样本空间,权值,XOR,DP
From: https://www.cnblogs.com/dingxingdi/p/18018384

相关文章

  • CF1879D Sum of XOR Functions
    记前缀异或和数组\(s\),于是题目中的\(f(l,r)\)可以被表示成\(s_r\opluss_{l-1}\),转化为求\(\sum\limits_{l=1}^n\sum\limits_{r=l}^n(s_r\opluss_{l-1})\times(r-l+1)\)。再记录\(4\)个值,\(cnt_0,cnt_1,sum_0,sum_1\)分别表示当前已经出现过的\(0/1\)的个数,出......
  • 代码随想录算法训练营第十七天 | 110.平衡二叉树 (优先掌握递归)| 404.左叶子之和 (优先
    257.二叉树的所有路径 已解答简单 相关标签相关企业 给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。叶子节点 是指没有子节点的节点。示例1:输入:root=[1,2,3,null,5]输出:["1->2->5","1->3"]示例2:输入:ro......
  • (18/60)找树左下角的值、路径总和、从中序与后序遍历构造二叉树
    找树左下角的值leetcode:513.找树左下角的值层序迭代法思路层序遍历,每次更新result为每层最左侧元素。复杂度分析时间复杂度:遍历,O(N)。空间复杂度:队列层序遍历,树*似完全二叉树时O(N),树极倾斜时O(logN)。注意点略代码实现/***Definitionforabinarytreenode.......
  • 「题解」ARC139F Many Xor Optimization Problems
    考虑线性空间的标准基底(即每个主元都只有对应向量有值),答案为所有基底异或和。对于一个秩\(k\)计算它对答案的贡献。固定主元为\(a_1<a_2<\cdots<a_k\),各种情况应该是等概率,也就是对第\(i\)个基底来说,\(a_i\)位一定为\(1\),再往下的位除了在\(a\)出现过的以外的位0/1是......
  • 欧拉路径
    欧拉路径欧拉路径定义:可以一笔画走完且不重复经过一条边的路径可用欧拉路径走完有向连通图判定:所有点入度与出度之差\(\le1\)入度与出度之差为1的点个数为0或2(总度数为偶数,这种点不可能只有1个,若有2个则一起点一终点)可用欧拉路径走完无向连通图判定:度数为奇数的点的个......
  • 代码随想录算法训练营第十七天| 110.平衡二叉树 257. 二叉树的所有路径 404.左叶
    110.平衡二叉树 题目链接:110.平衡二叉树-力扣(LeetCode)思路:判断平衡二叉树,就是判断两个子树的高度差,继而问题转化为了如何求子树的高度——后序遍历(主要卡在了这里)。递归函数返回的是树的高度,同时用-1来表示退出递归(一开始想着用bool型作为返回值,发现函数不好设计)。同时要关......
  • 路径覆盖与二分图匹配一一对应
    对任意一种路径覆盖,在二分图上选对应的边,肯定选出来的是一组匹配这就对应上去了难的主要是将二分图对应到一种路径覆盖上面去我们假设最开始把每个独立的点当做一条路径(即每个点既是起点也是终点),然后我们在二分图中每选一条边(注意是匹配边),就在DAG中选择对应的边,由于每次选择的是......
  • Linux下指定so动态库的加载路径的5种方法
    搜索的先后顺序是:编译目标代码时指定的动态库搜索路径;环境变量LD_LIBRARY_PATH指定的动态库搜索路径;配置文件/etc/ld.so.conf中指定的动态库搜索路径;默认的动态库搜索路径/lib;默认的动态库搜索路径/usr/lib。将库文件放置在对应的路径中,运行时就可以搜索到了。例1:通过gcc......
  • POJ--3764 The xor-longest Path(Trie)
    记录13:562024-2-10找到俩个点,获得最大的边权异或值。利用异或的性质,一个值被异或俩次相当于没有异或即axorbxorb=a所以先从顶点出发,获得每个点路径上的异或值,然后对这俩个值进行异或就获得了他们之间路径的异或值。获取从顶点到每个点路径上的异或值后,可以利用trie来......
  • 冗余路径
    这道题目是一个模型:给连通的无向图加边,使得无向图没有桥(即变成边双连通分量),最小化加边数因为边双连通分量本来就没有桥,所以我们考虑对整个图求一遍边双连通分量(使用tarjan算法),然后将边双连通分量缩为一个点考虑。那么缩完点后得到的图一定是一棵树(因为图中不可能存在环)然后要......