BZOJ 2115: [Wc2011] Xor DFS + 线性基】的更多相关文章

2115: [Wc2011] Xor Time Limit: 10 Sec  Memory Limit: 259 MB Description Input 第一行包含两个整数N和 M, 表示该无向图中点的数目与边的数目. 接下来M 行描述 M 条边,每行三个整数Si,Ti ,Di,表示 Si 与Ti之间存在 一条权值为 Di的无向边. 图中可能有重边或自环. Output 仅包含一个整数,表示最大的XOR和(十进制结果),注意输出后加换行回车. Sample Input 5 7 1 2 2 1…
-老是想到最长路上 其实可以这样:把每个环的xor和都存起来,然后任选一条1到n的路径的xor和ans,答案就是这个ans在环的线性基上跑贪心. 为什么是对的--因为可以重边而且是无相连通的,并且对于一条路,走偶数次相当于没走,所以任意走一条主路都可以从歧路走到某个环上,然后从歧路返回,此时就得到了这个环的xor和并且没有xor上歧路的边权. #include<iostream> #include<cstdio> using namespace std; const int N=1…
2115: [Wc2011] Xor Time Limit: 10 Sec  Memory Limit: 259 MBSubmit: 5714  Solved: 2420 题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=2115 Description: Input: 第一行包含两个整数N和 M, 表示该无向图中点的数目与边的数目. 接下来M 行描述 M 条边,每行三个整数Si,Ti ,Di,表示 Si 与Ti之间存在 一条权值为 Di…
题目链接 题意 中文题意 思路 因为存在环和重边,边来回走是没有意义的,因此最终的答案应该是一条从1到n的路径权值异或上若干个环的权值,那么难点在于如何选取这些环的权值使得最终的答案更优. 使用到线性基的贪心算法来计算.DFS处理出环的异或值,然后将这些值加入到线性基中,贪心选取. 参考 #include <bits/stdc++.h> using namespace std; typedef long long LL; typedef pair<int, int> pii; co…
标题效果:鉴于无向图.右侧的每个边缘,求一个1至n路径,右上路径值XOR和最大 首先,一个XOR并能为一个路径1至n简单的路径和一些简单的XOR和环 我们开始DFS获得随机的1至n简单的路径和绘图环所有线性无关(两个或多个环异或得到) 然后在一些数中选出一个子集.使它们与一个给定的数的异或和最大,这就是高斯消元的问题了 利用高斯消元使每一位仅仅存在于最多一个数上 然后贪心求解就可以 #include<cstdio> #include<cstring> #include<ios…
2115: [Wc2011] Xor Time Limit: 10 Sec  Memory Limit: 259 MB Submit: 2794  Solved: 1184 [Submit][Status][Discuss] Description Input 第一行包含两个整数N和 M, 表示该无向图中点的数目与边的数目. 接下来M 行描述 M 条边,每行三个整数Si,Ti ,Di,表示 Si 与Ti之间存在 一条权值为 Di的无向边. 图中可能有重边或自环. Output 仅包含一个整数,表…
2115: [Wc2011] Xor Time Limit: 10 Sec  Memory Limit: 259 MB Submit: 3915  Solved: 1633 [Submit][Status][Discuss] Description Input 第一行包含两个整数N和 M, 表示该无向图中点的数目与边的数目. 接下来M 行描述 M 条边,每行三个整数Si,Ti ,Di,表示 Si 与Ti之间存在 一条权值为 Di的无向边. 图中可能有重边或自环. Output 仅包含一个整数,表…
2115: [Wc2011] Xor Time Limit: 10 Sec  Memory Limit: 259 MBSubmit: 797  Solved: 375[Submit][Status] Description Input 第一行包含两个整数N和 M, 表示该无向图中点的数目与边的数目. 接下来M 行描述 M 条边,每行三个整数Si,Ti ,Di,表示 Si 与Ti之间存在 一条权值为 Di的无向边. 图中可能有重边或自环. Output 仅包含一个整数,表示最大的XOR和(十进制结…
https://www.lydsy.com/JudgeOnline/problem.php?id=2115 每一条从1到n的道路都可以表示为一条从1到n的道路异或若干个环的异或值. 那么把全部的环丢到线性基里基本操作就可以了.. https://blog.csdn.net/qaq__qaq/article/details/53812883 这个博客非常好 #include<iostream> #include<cstdio> #include<algorithm> #i…
题目链接 \(Description\) 给定一张无向带边权图(存在自环和重边).求一条1->n的路径,使得路径经过边的权值的Xor和最大.可重复经过点/边,且边权和计算多次. \(Solution\) 来找一些性质.从一个点出发,到达任意一个点后原路返回,那么得到的和仍为0.但是如果走完一个环后原路返回,则会得到这个环的Xor和. 那么从1点就可以得到任何一个环的Xor和.我们还需要一条1->n的路径,使得搭配上某些环后答案最大.于是我们就可以对环的权值构造线性基,拿路径Xor和在上面求最大…