
高斯消元
v5zsq
新的一天,新的不会
展开
-
POJ 1222 EXTENDED LIGHTS OUT(高斯消元)
Description 一个5*6的棋盘,每个格子有正反两面,每次翻转某个格子会让其上下左右的格子都翻转,现在给出一个初始状态,问如何翻转能使得整个棋盘每个格子都是0 Input 第一行一整数T表示用例组数,每组用例为一5*6矩阵表示每个格子的初始状态 Output 对于每组用例,输出一个5*6的矩阵表示每个格子的翻转情况,保证有解 Sample Input 2 0 1 1 0 1原创 2016-08-06 10:33:25 · 586 阅读 · 0 评论 -
BZOJ 2460 元素(贪心+线性基)
Description相传,在远古时期,位于西方大陆的Magic LandMagic\ Land上,人们已经掌握了用魔法矿石炼制法杖的技术。那时人们就认识到,一个法杖的法力取决于使用的矿石。一般地,矿石越多则法力越强,但物极必反:有时,人们为了获取更强的法力而使用了很多矿石,却在炼制过程中发现魔法矿石全部消失了,从而无法炼制出法杖,这个现象被称为“魔法抵消” 。特别地,如果在炼制过程中使用超过一块同原创 2017-12-22 11:30:25 · 348 阅读 · 0 评论 -
BZOJ 2844 albus就是要第一个出场(线性基)
Description已知一个长度为nn的正整数序列AA(下标从11开始), 令S={x|1≤x≤n} S =\{ x | 1\le x\le n \} ,SS的幂集2S2^S定义为SS所有子集构成的集合。定义映射f:2S−>Z f(空集)=0 f(T)=XOR A[t],∀t∈Tf : 2^S -> Z\ \ f(空集) = 0\ f(T) = XOR\ A[t],\forall t\in T原创 2017-12-22 11:59:08 · 443 阅读 · 0 评论 -
BZOJ 3105 新Nim游戏(博弈论+线性基)
Description传统的NimNim游戏是这样的:有一些火柴堆,每堆都有若干根火柴(不同堆的火柴数量可以不同)。两个游戏者轮流操作,每次可以选一个火柴堆拿走若干根火柴。可以只拿一根,也可以拿走整堆火柴,但不能同时从超过一堆火柴中拿。拿走最后一根火柴的游戏者胜利。本题的游戏稍微有些不同:在第一个回合中,第一个游戏者可以直接拿走若干个整堆的火柴。可以一堆都不拿,但不可以全部拿走。第二回合也一样,第二原创 2017-12-22 13:31:19 · 526 阅读 · 0 评论 -
BZOJ 3237 连通图(线性基)
Description给定一个连通的无向图和若干小集合,每个小集合包含一些边。对于每个集合,你需要确定将集合中的边从原先的无向图中删除后该图是否保持连通。一个图是连通的当且仅当任意两个不同的点之间存在一条路径连接他们。Input输入的第一行包含两个整数nn和mm(1≤n≤10000,1≤m≤100000)(1\le n\le 10000,1\le m\le 100000),表示无向图的点数和边数,每原创 2017-12-22 13:44:42 · 559 阅读 · 0 评论 -
BZOJ 3563 DZY Loves Chinese(线性基)
Description神校XJXJ之学霸兮,DzyDzy皇考曰JCJC。摄提贞于孟陬兮,惟庚寅DzyDzy以降。纷DzyDzy既有此内美兮,又重之以修能。遂降临于OIOI界,欲以神力而凌♂辱众生。今DzyDzy有一魞歄图,其上有NN座祭坛,又有MM条膴蠁边。时而DzyDzy狂WAWA而怒发冲冠,神力外溢,遂有KK条膴蠁边灰飞烟灭。而后俟其日A50A50题则又令其复原。(可视为立即复原)然若有祭坛无法原创 2017-12-22 13:49:10 · 449 阅读 · 0 评论 -
BZOJ 3569 DZY Loves Chinese II(线性基)
Description神校XJXJ之学霸兮,DzyDzy皇考曰JCJC。摄提贞于孟陬兮,惟庚寅DzyDzy以降。纷DzyDzy既有此内美兮,又重之以修能。遂降临于OIOI界,欲以神力而凌♂辱众生。今DzyDzy有一魞歄图,其上有NN座祭坛,又有MM条膴蠁边。时而DzyDzy狂WAWA而怒发冲冠,神力外溢,遂有KK条膴蠁边灰飞烟灭。而后俟其日A50A50题则又令其复原。(可视为立即复原)然若有祭坛无法原创 2017-12-22 14:58:13 · 405 阅读 · 0 评论 -
BZOJ 3811 玛里苟斯(线性基)
Description魔法之龙玛里苟斯最近在为加基森拍卖师的削弱而感到伤心,于是他想了一道数学题。SS是一个可重集合,S={a1,a2,…,an}S=\{a_1,a_2,…,a_n\}。等概率随机取SS的一个子集A={ai1,…,aim}A=\{a_{i1},…,a_{im}\}。计算出AA中所有元素异或 xx, 求xkx^k的期望。Input第一行两个正整数n,kn, k。以下nn行每行一个整数,原创 2017-12-22 18:38:32 · 484 阅读 · 0 评论 -
BZOJ 4004 装备购买(贪心+线性基)
Description脸哥最近在玩一款神奇的游戏,这个游戏里有nn件装备,每件装备有mm个属性,用向量zi(aj,.....,am)z_i(a_j ,.....,a_m)表示(1≤i≤n;1≤j≤m)(1\le i\le n; 1\le j\le m),每个装备需要花费cic_i,现在脸哥想买一些装备,但是脸哥很穷,所以总是盘算着怎样才能花尽量少的钱买尽量多的装备。对于脸哥来说,如果一件装备的原创 2017-12-22 18:49:59 · 510 阅读 · 0 评论 -
BZOJ 4568 幸运数字(在线倍增法+线性基)
DescriptionAA国共有nn座城市,这些城市由n−1n-1 条道路相连,使得任意两座城市可以互达,且路径唯一。每座城市都有一个幸运数字,以纪念碑的形式矗立在这座城市的正中心,作为城市的象征。一些旅行者希望游览A A 国。旅行者计划乘飞机降落在x x 号城市,沿着x x 号城市到y y 号城市之间那条唯一的路径游览,最终从y y 城市起飞离开A A 国。在经过每一座城市时,游览者就会有机原创 2017-12-22 19:01:50 · 542 阅读 · 0 评论 -
CodeForces 587 E.Duff as a Queen(线性基+线段树+树状数组)
Description给出一个长度为nn的序列aia_i,有两种操作1 l r k1\ l\ r\ k: 表示将al,al+1,...,ara_l,a_{l+1},...,a_r每一个数都异或上kk2 l r2\ l\ r: 查询al,al+1,...,ara_l,a_{l+1},...,a_r这些数选取子集异或可以得到的不同数字个数Input第一行两整数n,qn,q表示序列长原创 2018-01-11 21:59:14 · 1087 阅读 · 0 评论 -
CodeForces 724 G.Xor-matic Number of the Graph(组合数学+dfs+线性基)
Description给出一个nn个点mm条边的无向图,每条边有边权,定义三元组(u,v,s)(u,v,s)合法当且仅当1≤uv≤n1\le u且存在一条从uu到vv的路径使得路径上边的权值异或和为ss,问所有合法三元组的ss值之和 Input第一行两个整数n,mn,m表示点数和边数,之后mm行每行三个整数ui,vi,wiu_i,v_i,w_i表示ui,viu_i,v_i之间有一条权值原创 2018-01-13 21:46:26 · 470 阅读 · 0 评论 -
HDU 3949 XOR(线性基)
Description给出nn个正整数,问这nn个正整数选取非空子集异或得到的数集中第kk的数字小的数字Input第一行一整数TT表示用例组数,每组用例首先输入两个整数n,qn,q分别表示数字个数和查询数,之后输入nn个整数aia_i,最后qq行每行一个整数kk表示查询第kk大的数(T≤30,1≤n,q≤10000,1≤ai,k≤1018)(T\le 30,1\le n,q\le 10000,1\l原创 2017-12-30 09:38:49 · 593 阅读 · 0 评论 -
CodeForces 895 C.Square Subsets(状压DP+线性基)
Description给出nnn个数a1,...,ana1,...,ana_1,...,a_n,问从这nnn个数中选一非空子集使得乘积是完全平方数的方案数Input第一行一整数nnn表示数的个数,之后输入nnn个整数ai(1≤n≤105,1≤ai≤70)ai(1≤n≤105,1≤ai≤70)a_i(1\le n\le 10^5,1\le a_i\le 70)Output输出方案...原创 2018-01-15 15:09:29 · 560 阅读 · 0 评论 -
CodeForces 388 D.Fox and Perfect Sets(线性基+dp)
Description称一个非空子集(元素均非负)的集合是完美的当且仅当其对异或运算封闭,问所包含元素为不超过kk的非负整数的集合中有多少是完美的Input一个整数k(1≤k≤109)k(1\le k\le 10^9)Output输出满足条件的集合个数,结果模109+710^9+7Sample Input1Sample Output2Solution考虑原创 2018-01-07 22:33:42 · 613 阅读 · 4 评论 -
BZOJ 2115 Xor(线性基)
Description考虑一个边权为非负整数的无向连通图,节点编号为11到NN,试求出一条从11号节点到NN号节点的路径,使得路径上经过的边的权值的异或和最大。路径可以重复经过某些点或边,当一条边再路径中出现了多次时,其权值在计算异或和时也要被计算相应多的次数,具体见样例。Input第一行包含两个整数NN和MM, 表示该无向图中点的数目与边的数目。 接下来MM行描述MM条边,每行三个整数Si,Ti,原创 2017-12-22 11:18:06 · 403 阅读 · 0 评论 -
BZOJ 1013 球形空间产生器sphere(高斯消元)
Description有一个球形空间产生器能够在nn维空间中产生一个坚硬的球体。现在,你被困在了这个nn维球体中,你只知道球 面上n+1n+1个点的坐标,你需要以最快的速度确定这个nn维球体的球心坐标,以便于摧毁这个球形空间产生器。Input第一行是一个整数n(1≤n≤10)n(1\le n\le 10)。接下来的n+1n+1行,每行有nn个实数,表示球面上一点的nn维坐标。每一个实数精确到小数点原创 2017-12-22 11:03:52 · 407 阅读 · 0 评论 -
POJ 1681 Painter's Problem(高斯消元)
Description 一个n*n的棋盘,可以给任一格子染成黄色,但染某个格子时会让其上下左右的格子也变成黄色,现给出一个棋盘的初始状态,问如何染色能使得整个棋盘全变成黄色 Input 第一行一整数T表示用例组数,每组用例首先输入一整数n表示棋盘规模,之后一个n*n矩阵表示棋盘的初始状态(T<=20,n<=15) Output 对于每组用例,如果存在一个方案使得所有格子都变成黄色则输出最少原创 2016-08-06 10:41:06 · 506 阅读 · 0 评论 -
POJ 1830 开关问题(高斯消元)
Description 有N个相同的开关,每个开关都与某些开关有着联系,每当你打开或者关闭某个开关的时候,其他的与此开关相关联的开关也会相应地发生变化,即这些相联系的开关的状态如果原来为开就变为关,如果为关就变为开。你的目标是经过若干次开关操作后使得最后N个开关达到一个特定的状态。对于任意一个开关,最多只能进行一次开关操作。你的任务是,计算有多少种可以达到指定状态的方法。(不计开关操作的顺序)原创 2016-08-06 10:46:01 · 786 阅读 · 0 评论 -
POJ 2947 Widget Factory(高斯消元)
Description 有n种零件,生产每种零件都需要3~9天,现在给出m种记录,每种记录记录了生产一些零件的开始日期和结束日期(周一到周日),问是否能够得到生产每种零件所需时间 Input 多组用例,每组用例首先输入两个整数n和m表示零件种类数和记录数,每次记录首先输入这次生产的零件数量num,然后输入开始日期和结束日期,之后输入num个零件编号,以0 0结束输入(1<=n,m<=300,n原创 2016-08-08 11:24:30 · 498 阅读 · 0 评论 -
POJ 3185 The Water Bowls(高斯消元)
Description 有20头牛在一排水槽旁喝水,一些牛是背对水槽的(用1表示),一些牛的面向水槽的(用0表示),每只牛转一下都会使其两旁的牛转一下,问是否存在一种操作方案使得所有牛都喝到水 Input 20个0或1表示每头牛的朝向 Output 保证存在一种操作方案使得所有牛都喝到水,输出在所有可行方案中操作次数最小值 Sample Input 0 0 1 1 1 0 0 1 1原创 2016-08-08 11:29:42 · 931 阅读 · 2 评论 -
POJ 2065 SETI(高斯消元)
Description 给出定义f(k) = ∑(0<=i<=n-1)ai*k^i(mod p),给出n个式子的结果f(1)~f(n),用一个字符串表示f的值,*表示0,a~z表示1~26,要解出a(0)~a[n-1] f(1) = a(0) * 1^0 + a(1) * 1^1 + a(2) * 1^2 ,,,,,,,a(n-1) * 1^n f(2) = a(0) * 2^0 + a(1)原创 2016-08-08 11:44:17 · 499 阅读 · 0 评论 -
HDU 3976 Electric resistance(高斯消元)
Description 给出一个电路图,无重边,边权为电阻大小,求1~n的等效电阻 Input 第一行一整数T表示用例组数,每组用例第一行为两整数n和m分别表示点数和边数,之后m行每行三个整数u,v,w表示u和v之间边权为w Output 对于每组用例,输出1~n之间的等效电阻,结果保留两位小数 Sample Input 1 4 5 1 2 1 2 4 4 1 3 8原创 2016-08-08 12:27:45 · 486 阅读 · 0 评论 -
SGU 200 Cracking RSA(高斯消元+高精度)
Description 给出m个整数,他们都是由前t个素数组成,问有多少个这m个数的子集,使得这个子集中数的乘积是一个完全平方数 Input 第一行两个整数t和m,第二行m个整数bi(1<=t,m<=100,1<=bi<=10^9) Output 输出满足条件的集合个数 Sample Input 3 4 9 20 500 3 Sample Output 3 Solution原创 2016-08-08 12:33:53 · 621 阅读 · 0 评论 -
HDU 5755 Gambler Bo(高斯消元)
Description 有一个n*m矩阵,每个格子上有一个初始值(0,1,2),每次操作可以让任一个格子的值加2,但是也会使得这个格子上下左右的格子里面的值加1,问是否存在一种操作序列使得所有格子的值模3余0,如果存在则输出任一种总操作数不超过2nm的操作序列 Input 第一行一整数T表示用例组数,每组用例首先输入两个整数n和m表示矩阵行列数,之后一个n*m矩阵表示这个矩阵的初始状态(T<=原创 2016-08-08 16:19:42 · 452 阅读 · 0 评论 -
HDU 5833 Zhu and 772002(高斯消元)
Description 给出n个数ai,每个数的最大素因子都不超过2000,从这n个数中选择一些数乘起来,有多少种方案使得结果是一个完全平方数 Input 第一行一整数T表示用例组数,每组用例首先输入一整数n,然后n个整数ai (1<=n<=300,1<=ai<=10^18) Output 输出方案数,结果模1e9+7 Sample Input 2 3 3 3 4 3 2 2原创 2016-09-02 16:15:01 · 368 阅读 · 0 评论 -
HDU 5852 Intersection is not allowed!(组合数学+行列式)
Description 一个n*n棋盘,第一行第a1,a2,…,ak列有k个棋子,每个棋子都只能往下和往右走,每个棋子的终点是第n行第b1,b2,…,bk列,问这k个棋子到达各种的终点且路径不交叉的方法数 Input 第一行一整数T表示用例组数,每组用例首先输入两整数n和k表示棋盘规模和棋子数量,之后k个整数ai表示k个棋子的起点,最后k个整数bi表示k个棋子的终点(1<=n<=10^5,1<原创 2016-09-02 21:39:21 · 1061 阅读 · 0 评论 -
GYM 100827 D.Function(高斯消元)
Description 求z(t) Input 首先输入一整数T表示用例组数,每组用例七个整数n,m,a,b,c,d,r (1<=T<=100,1<=n<=m<=100,1<=b,d<=r,1<=a,c,r<=1000) Output 输出z(t)的值,保证有解,要求相对误差和绝对误差均不超过1e-6 Sample Input 3 1 1 1 1 1 1 1 2 3 1 2原创 2017-03-09 14:40:32 · 411 阅读 · 0 评论 -
BZOJ 4031 小Z的房间(生成树计数+行列式)
Description 你突然有了一个大房子,房子里面有一些房间。事实上,你的房子可以看做是一个包含n∗mn*m个格子的格状矩形,每个格子是一个房间或者是一个柱子。在一开始的时候,相邻的格子之间都有墙隔着。你想要打通一些相邻房间的墙,使得所有房间能够互相到达。在此过程中,你不能把房子给打穿,或者打通柱子(以及柱子旁边的墙)。同时,你不希望在房子中有小偷的时候会很难抓,所以你希望任意两个房间之间都只原创 2017-08-17 20:37:13 · 495 阅读 · 0 评论 -
HDU 6064 RXD and numbers(生成树计数+行列式)
Description 一个长度为n的序列A满足 1.1<=A[i]<=m 2.A[1]=A[n]=1 3.对任意1<=x<=m,至少存在一个1<=i<=n使得A[i]=x 4.对任意1<=x,y<=m,满足A[i]=x,A[i+1]=y的i的数量是D[x][y] 给出D,求满足条件的A序列数量 Input 多组用例,每组用例首先输入一整数m,之后输入一m*m矩阵D,以文件尾结束输入原创 2017-08-07 09:44:01 · 616 阅读 · 0 评论 -
LightOJ 1288 Subsets Forming Perfect Squares(高斯消元法)
Description给出一个nn个元素的集合SS,问SS有多少子集的乘积是一个完全平方数Input第一行一整数TT表示用例组数,每组用例首先输入一整数nn表示SS中元素个数,之后输入nn个正整数a1,...,ana_{1},...,a_{n}表示这nn个元素,保证aia_{i}的最大素因子不超过300 (T≤100,1≤n≤1000,2≤ai≤215)(T\leq100,1\leq n\leq 1原创 2017-08-28 22:33:51 · 618 阅读 · 0 评论 -
51Nod 1577 异或凑数(线性基)
Description从左到右一共nn个数,数字下标从11到nn编号。一共mm次询问,每次询问是否能从第LL个到第RR个数中(包括第LL个和第RR个数)选出一些数使得他们异或为KK。数据量比较大。输入请用挂int read(){ int ans=0; char last=' ',ch=getchar(); while(ch>='0' && ch<='9')ans=ans*10+ch原创 2017-12-22 10:53:26 · 629 阅读 · 0 评论 -
CodeForces 24 D.Broken robot(概率DP+高斯消元)
Description给出一个n×mn×mn\times m的矩阵区域,一个机器人初始在第xxx行第yyy列,每一步机器人会等概率的选择停在原地,左移一步,右移一步,下移一步,如果机器人在边界则不会往区域外移动,问机器人到达最后一行的期望步数Input第一行两个整数n,mn,mn,m表示矩阵行列数,之后输入两个整数x,yx,yx,y表示机器人初始位置(1≤n,m≤1000,1≤x≤n,...原创 2018-03-30 10:42:21 · 805 阅读 · 4 评论