摘要: 倍增求lca struct edge{ int v,w; }; //思考:要想知道一个数有几个二级制位,直接n=__lg(x) //我们可以知道<n最近的2的次幂,9最大的是8,8虽然是2的3次方,但要遍历它的每一位 //需要3到0开始,也就是考虑到0的影响,我们可以正好满足偏移。 //2的3次方有 阅读全文
posted @ 2024-04-20 03:41 potential-star 阅读(21) 评论(0) 推荐(0)
摘要: 01 trie 找序列中任意两数的最大异或和 int n, m; int a[N]; int idx=0; int ch[N*31][2]; void insert(int x){ int p=0; for(int i=30;i>=0;i--){ int u=(x>>i)&1; if(!ch[p][ 阅读全文
posted @ 2024-04-20 03:19 potential-star 阅读(16) 评论(0) 推荐(0)