数学---线性空间
#
夕林山寸
这个作者很懒,什么都没留下…
展开
-
算法竞赛——进阶指南——345. 牛站 floyd +矩阵快速幂
令:d[k][i][j]表示i到j 刚好经过k条边,的最短路。显然 输出数据是k=1的情况。对于dp[k][i][j]转移有:dp[k][i][j]=min(dp[a][i][l]+dp[b][l][j]); // 1<=l<=sz,a+b==k.即:恰好经过a条边的状态和恰好经过b条边的状态,合并即恰好经过a+b条边的状态。发现:这很想矩阵转移。满足结合律。即可以先执行某一对的矩阵转移(顺序不能改变)所以用矩阵快速幂加速转移即可。#include &...原创 2020-05-19 22:58:58 · 345 阅读 · 0 评论 -
算法竞赛——进阶指南——acwing210. 异或运算 第K小异或
经典问题,手敲一遍#include <bits/stdc++.h>using namespace std;typedef long long ll;#define ls (o<<1)#define rs (o<<1|1)#define pb push_backconst double PI= acos(-1.0);const int M = ...原创 2020-04-09 15:40:11 · 196 阅读 · 0 评论 -
算法竞赛——进阶指南——acwing209. 装备购买 高斯消元求矩阵秩
注意eps不能设太小,否则精度不够,这题明显求矩阵秩。高斯消元求一下即可。注意碰到某一列全0的情况,跳过即可,行数不要+1#include <bits/stdc++.h>using namespace std;typedef long long ll;#define ls (o<<1)#define rs (o<<1|1)#defin...原创 2020-04-03 18:35:22 · 164 阅读 · 0 评论 -
线性代数学习进度——行列式(一)——线性基/线性空间深化学习 第一单元测试:14/15
系统的过一下线代,之前零零散散学不少了线代的基础行列式。对线性基有了更深的了解原创 2020-04-02 21:24:26 · 191 阅读 · 0 评论 -
P4151 [WC2011]最大XOR和路径 ,巧妙的图上性质
先随便找一条1-n的链,异或和为w,然后任选一个节点引到一条环内跑这个环,再回来,由于异或的性质,相当于只是w与换上权值异或。联想线性基的性质,容易发现:把所有环的异或和丢到线性基里,用链的值去找最大异或和即可。这题的难点其实是在找所有环的异或和。如果这个图是仙人掌就很简单:dfs记录下即可。但如果这个图是任意无向图。会出现几个换公用一条边,环的数量是n^2级,不可枚举。但...原创 2020-04-02 19:08:37 · 199 阅读 · 0 评论 -
HDU - 3949 XOR 求多个数异或的集合中第k小
用二进制处理。线性基可异或出的集合为2^cnt(不选数是0)我们需要这样的线性基,每个数的最高位唯一是1,(换句话说,其他数的当前位是0.)这样一来,选的数不同,异或出的结果也一定不同,这个序列也是个线性基。而且可以用二进制分解第k大。比如第3大等于 第2小的数加上第1小的数。//#include <bits/stdc++.h>#include<io...原创 2020-03-25 13:25:58 · 275 阅读 · 0 评论 -
To xor or not to xor SGU - 275 线性基入门题
线性基是一个序列的异或和基底。1.原序列里面的任意一个数都可以由线性基里面的一些数异或得到2.线性基里面的任意一些数异或起来都不能得到03.线性基里面的数的个数唯一,并且在保持性质一的前提下,数的个数是最少的#include <bits/stdc++.h>using namespace std;typedef long long ll;#define ls...原创 2020-03-23 22:18:54 · 158 阅读 · 0 评论