- 博客(114)
- 收藏
- 关注
原创 【uoj2】 NOI2014—起床困难综合症
http://uoj.ac/problem/2 (题目链接)题意:给出n个操作包括And,or,xor,求从0~m中的一个数使得经过这些操作后得到的值最大。Solution 大水题。。贪心由高到低枚举二进制上每一位:这一位为0,经过操作后当前位变为1,那么就把这一位定为0;这一位为1,经过操作后仍然为1,且当前答案加上这一位后不超过m,那么就把这一位定为1;无论是0还是1经过操作后都为0,那么
2016-09-26 19:25:43 597
原创 【uoj128】 NOI2015—软件包管理器
http://uoj.ac/problem/128 (题目链接)题意:给出一棵树,每个节点代表一个软件包,维护卸载和安装操作。若要卸载节点x,那么必须卸载它的子树上的所有软件包;若要安装节点x必须安装所有它的祖先。每次询问安装或卸载某个软件包一共需要安装或者卸载多少个软件包。Solution 很裸的树链剖分,0表示未安装,1表示已安装。安装操作很好处理对吧,每次对节点x到根节点这条路劲进行查询
2016-09-25 21:54:29 630
原创 【bzoj4010】 HNOI2015—菜肴制作
http://hzwer.com/6820.html (题目链接)题意:给出一张无向图要求出一个拓扑序列满足1的位置最靠前 ,在保证上面的条件下使2的位置最靠前 ,在保证上面的条件下使3的位置最靠前 …… Solution 构造逆拓扑序,套个堆每次选出编号最大的加入答案,输出答案时从后往前输出。 有点难想,但是脑补一下还是OK的。代码:// bzoj4010#include<algor
2016-09-25 11:02:29 497
原创 【poj3233】 Matrix Power Series
http://poj.org/problem?id=3233 (题目链接)题意:给出一个n×n的矩阵A,求模m下A+A2+A3+…+AkA + A^2 + A^3+ … +A^k 的值Solution 今日考试就A了这一道题。。 当k为偶数时,原式=(Ak2+1)×(A1+A2+...+Ak2)(A^\frac{k}2+1)×(A^1+A^2+...+A^\frac{k}2) 当k
2016-09-24 17:12:21 474
原创 【poj3070】 Fibonacci
http://poj.org/problem?id=3070 (题目链接)题意:用矩阵乘法求fibonacci数列的第n项。Solution 矩乘入门题啊,题目把题解已经说的很清楚里= =。 矩乘其实很简单,通过自己YY或者是搜索对于一个递推公式求出它所对应的矩阵,然后套个快速幂就可以迅速求解第n项。代码:// poj3070#include<algorithm>#include<i
2016-09-24 14:23:06 441
原创 【codevs1409】 拦截导弹 2
http://codevs.cn/problem/1409/ (题目链接)题意:给出n个三维的导弹,每次拦截只能打x,y,z严格上升的若干个导弹,求最多能一次拦截下多少个导弹,以及最少拦截几次将所有导弹全部拦截。Solution 第一问直接排序后n²的dp即可。 第二问我们考虑二分图匹配,连边后转换模型成为最小路径覆盖。代码:// codevs1409#include<algorith
2016-09-23 17:09:38 512
转载 【教程】如何正确的写一个Lemon/Cena的SPJ(special judge)
转自:http://www.cnblogs.com/chouti/p/5752819.htmlSpecial Judge:当正确的输出结果不唯一的时候需要的自定义校验器首先有个框架#include<fstream>ifstream fin,fout,fstdofstream fscore,freport;double Judge(){}int main(int argc,char *argv
2016-09-23 16:37:42 1884
原创 【bzoj1562】 NOI2009—变换序列
http://www.lydsy.com/JudgeOnline/problem.php?id=1562 (题目链接)题意:给出一个序列(0~n-1),这个序列经过某个变换会成为另外一个序列,但是其中的元素不会改变,给出初始序列与变换后的序列每一位上的“距离”,求字典序最小的变换序列。Solution 每个位置上只有2种情况,很明显的二分图匹配。因为要求字典序最小,我们考虑匈牙利算法的运行方式
2016-09-23 15:42:02 619
转载 【poj1090】 Chain
http://poj.org/problem?id=1090 (题目链接)题意:给出九连环的初始状态,要求将环全部取下需要走多少步。Solution 格雷码:神犇博客 当然递推也可以做。 代码:// poj1090#include<algorithm>#include<iostream>#include<cstring>#include<cstdlib>#includ
2016-09-21 15:29:44 599
原创 【poj2773】 Happy 2006
http://poj.org/problem?id=2773 (题目链接)题意:给出两个数m,k,要求求出从1开始与m互质的第k个数。Solution 数据范围很大,直接模拟显然是不行的,我们需要用到一些奇奇怪怪的方法。 考虑是否可以通过某些途径快速得到解,然而并没有头绪。正难则反,能不能通过计算不与m互质的数的个数来得到互质的数的个数呢?答案是可行的,我们可以运用容斥。 二分一个
2016-09-20 21:59:31 1003
原创 【bzoj3150】 cqoi2013—新Nim游戏
www.lydsy.com/JudgeOnline/problem.php?id=3105 (题目链接)题意:在第一个回合中,第一个游戏者可以直接拿走若干个整堆的火柴。可以一堆都不拿,但不可以全部拿走。第二回合也一样,第二个游戏者也有这样一次机会。从第三个回合(又轮到第一个游戏者)开始,规则和Nim游戏一样。问是否有先手必胜策略。Solution 线性基,拟阵证明?不会。代码:// bzoj3
2016-09-20 17:16:25 446
原创 【bzoj2460】 BeiJing2011—元素
www.lydsy.com/JudgeOnline/problem.php?id=2460 (题目链接)题意:n个二元组(a,b),求一个∑b最大,且所有子集XOR<>0的集合Solution 线性基的经典应用。具体证明好像要用到拟阵,不会,好像是很高深的东西。代码:// bzoj2460#include<algorithm>#include<iostream>#include<cstd
2016-09-20 16:50:45 448
原创 【bzoj3246】 Ioi2013—Dreaming
www.lydsy.com/JudgeOnline/problem.php?id=3246 (题目链接)题意:给出一棵不完全的树,要求在树上连最少的边使得所有点联通,并且使得两点件最大距离最小。Solution 今天考试题,有情况没考虑到。。。 http://www.ccf.org.cn/resources/1190201776262/fujian/xuhaoran2013-07-25-
2016-09-20 16:01:54 1140
原创 【bzoj1179】 Apio2009—Atm
www.lydsy.com/JudgeOnline/problem.php?id=1179 (题目链接)题意:给出一张有向图,每个节点有点权。标记一些点,找出一条路径,可以重复经过一条边,使得总点权和最大。重复经过一个点不能重复算点权。Solution 今日考试题,Dijkstra不幸Gi烂。 WARNING:Dijkstra处理最长路时会出现一些不好的情况,所以千万不要用!! 既
2016-09-20 14:48:30 641
原创 【bzoj2115】 Xor
www.lydsy.com/JudgeOnline/problem.php?id=2115 (题目链接)题意:给出一张图,可能有重边和自环,在图中找出一条从1~n的路径,使得经过的路径的权值的异或和最大,每条边可以重复经过并且重复计算异或和。Solution 刚看到这道题,想了10分钟完全没有思路,于是就膜了题解。 我们先把图看成一棵树,那么我们所需要找出的路径可以分成一些环和一条从1~
2016-09-19 23:01:06 443
原创 【poj3537】 Crosses ans Crosses
poj.org/problem?id=3537 (题目链接)题意:给出一个1*n的棋盘,每次可以选择一个没被标记过的点打标记,若经过某一步操作使得出现3个连续的标记,则最后操作的人获胜。问是否存在先手必胜策略。Solution 我们可以很快发现,若给x位置打上标记,那么棋盘就被分成了2份,分别是x-3以及n-x-2,于是sg[n]=mex{sg[x-3]^sg[n-x-2]},1<=x<=n。
2016-09-18 22:51:17 385
原创 【bzoj2463】 谁能赢呢?
www.lydsy.com/JudgeOnline/problem.php?id=2463 (题目链接)题意:一个n*n的棋盘,开始时左上角有一个棋子,每次可以把棋子向4个方向移动,但不能移动到曾经走过的格子上,无法移动者输,问是否存在先手必胜策略。Solution 手玩了一下n<=4的情况,发现当n是偶数时就有必胜策略,交上去果然AC。。然而不会证明,于是翻了下别人的题解。 当n
2016-09-18 22:20:08 507
原创 【bzoj2819】 Nim
www.lydsy.com/JudgeOnline/problem.php?id=2819 (题目链接)题意:动态树上路径异或和。Solution Nim取石子游戏的sg值就是每堆石子的异或和,所以问题的实质就是树上路径异或和。 看到题目,树上区间问题果断树链剖分,结果TLE,算了下复杂度nlog2n,结果等于180500000。。。不知道为什么网上还是有蛮多人用树链剖分A了,难道是我写
2016-09-18 21:54:52 396
原创 【poj2891】 Strange Way to Express Integers
poj.org/problem?id=2891 (题目链接)题意:求解线性同余方程组,不保证模数一定两两互质。Solotion 用exgcd将俩个同余方程合并成一个 如合并n%M=R,n%m=r 即M*x+R=m*y+r M*x-m*y=r-R 设a=M/t,b=m/t,c=(r-R)/t,t=gcd(a
2016-09-16 22:56:59 474
原创 【codevs1200】 NOIP2012—同余方程
codevs.cn/problem/1200/ (题目链接)题意:求关于 x 的同余方程 ax ≡ 1 (mod b)的最小正整数解。Solution 这道题其实就是求a mod b的逆元x。所谓逆元其实很简单,记a的关于模p的逆 元为a^-1,则a^-1满足aa^-1≡ 1(mod p),用扩展欧几里德即可。 关于扩展欧几里德,有博客写了证明:blog.csdn.net/li
2016-09-14 22:20:41 819
原创 【bzoj1013】 JSOI2008—球形空间产生器sphere
www.lydsy.com/JudgeOnline/problem.php?id=1013 (题目链接)题意:有一个n维的球体,给出球上n+1个点,求出圆心。Solution 题中给出了对于n维空间点与点之间的距离求法。那么我们将圆心的坐标设为{x1,x2,x3……xn},那么就可以列出n个n元一次方程。 高斯消元。代码:// bzoj1013#include<algorithm>#
2016-09-14 16:18:49 487
原创 【bzoj1202】 HNOI2005—狡猾的商人
http://www.lydsy.com/JudgeOnline/problem.php?id=1202 (题目链接)题意:给出m段区间和,判断是否存在某段区间与之前读入的区间相矛盾。Solution 裸带权并查集。 代码:// bzoj1202#include<algorithm>#include<iostream>#include<cstdlib>#include<cst
2016-09-12 22:48:26 398
转载 【poj1182】 食物链
http://poj.org/problem?id=1182 (题目链接)题意:中文题Solution 带权并查集。 神犇博客,秒懂 %3运用的很巧妙。代码:// poj1182#include<algorithm>#include<iostream>#include<cstdlib>#include<cstring>#include<cstdio>#include<c
2016-09-12 20:22:56 320
原创 【poj1962】 Corporative Network
http://poj.org/problem?id=1962 (题目链接)时隔多年又一次写带权并查集。题意:n个节点,若干次询问,I x y表示从x连一条边到y,权值为|x-y|%1000;E x表示询问x到x所指向的终点的距离。Solution 很裸的带权并查集。代码:// poj1962#include<algorithm>#include<iostream>#include<cst
2016-09-12 20:17:20 383
原创 【bzoj1486】 HNOI2009—最小圈
http://www.lydsy.com/JudgeOnline/problem.php?id=1486 (题目链接)题意:给出一张有向图,规定一个数值u表示图中一个环的权值/环中节点个数。求最小的u。Solution 尼玛今天考试题,不知道是考二分的话这真的做不出。。 二分一个答案ans,这个答案可行当且仅当ans>=∑w/cnt,cnt表示环中节点个数。移项,ans*cnt-∑w>=
2016-09-12 17:23:18 528
原创 【bzoj1016】 JSOI2008—最小生成树计数
http://www.lydsy.com/JudgeOnline/problem.php?id=1016 (题目链接)题意:求图的最小生成树计数。Solution %了下题解,发现要写矩阵树,150++的程序什么鬼。于是就蒯了hzwer的简便方法。 将边按照权值大小排序,将权值相同的边分到一组,统计下每组分别用了多少条边。然后对于每一组进行dfs,判断是否能够用这一组中的其他边达到相同的
2016-09-11 10:17:13 619
原创 【uoj150】 NOIP2015—运输计划
http://uoj.ac/problem/150 (题目链接)题意:给出一棵树以及m个询问,可以将树上一条边的权值修改为0,求经过这样的修改之后最长的边最短是多少。Solution 老早就听说过这道题了,好像使用树链剖分。 先树链剖分求出每个询问的路程,最长的最短,可以用二分做。二分最长的边的大小,也就是最后的答案,问题来了,怎么判断这个答案是否可行呢? 我们记录下所有超出当前答
2016-09-11 09:20:50 906
原创 【poj2983】 Is the Information Reliable?
http://poj.org/problem?id=2983 (题目链接)一个SB错误TLE了半个小时。。。题意:一条直线上有n个点,给出m条信息,若为P则表示点A在点B的北方X米,若为V则表示A在B的北方。判断给出的信息是否合法。Solution 对于P,A-B=X等价于是A-B>=X && A-B<=X(B-A>=-X)。 对于V,A-B>=1。 所以我们就可以利用差分约束去求
2016-09-08 16:49:12 351
原创 【poj1716】 Integer Intervals
http://poj.org/problem?id=1716 (题目链接)题意:给出n个区间,要求取出最少数量的不同的自然数,使每个区间中至少包含2个取出的数。Solution 差分约束。 运用前缀和,将问题转化为了一些不等式,然后建图连边跑SPFA最长路(因为是>=)即可,因为有负权所以用不了dijistra。就是poj1201的简化版。代码:// poj1716#include<a
2016-09-08 14:29:26 393
转载 【bzoj1502】 NOI2005—月下柠檬树
http://www.lydsy.com/JudgeOnline/problem.php?id=1502 (题目链接)今天考试题,从来没写过圆的面积之类的东西。。GG题意:一颗树由n个圆台组成,现在有倾斜角为alpha的光,不计树干阴影,光线沿直线传播,求这个树在水平地面投影的面积。Solution Simpson积分法。 直接蒯一份题解算了(http://blog.csdn.net/w
2016-09-06 21:18:48 561
原创 【poj1201】 Intervals
http://poj.org/problem?id=1201 (题目链接)题意:给出n个区间[ai,bi],要求选出尽可能少的数,使得每个区间i中至少存在c[i]个数。Solution 差分约束。 区间可以表示为sum[bi]-sum[ai-1],所以可以列出n个不等式:sum[bi]-sum[ai-1]>=c[i],然后每个sum[x]满足0<=sum[x+1]-sum[x]<=1,这
2016-09-03 22:20:24 714
原创 【poj3159】 Candies
http://poj.org/problem?id=3159 (题目链接)题意:有n个小朋友,班长要给每个小朋友发糖果。m种限制条件,小朋友A不允许小朋友B比自己多C个糖果。问第1个小朋友最多比第n个小朋友多多少糖果。Solution 原来这就是所谓的差分约束。。浅显易懂的博客,超详细的博客。选哪种呢?代码:// poj3159#include<algorithm>#include<ios
2016-09-03 19:46:59 434
原创 【poj1804】 Brainman
http://poj.org/problem?id=1804 (题目链接)题意:求逆序对Solution1 归并排序。 每次合并时计算逆序对。 代码:// poj1804#include<algorithm>#include<iostream>#include<cstdlib>#include<cstring>#include<cstdio>#include<cma
2016-09-03 17:17:42 447
原创 【bzoj1061】 Noi2008—志愿者招募
http://www.lydsy.com/JudgeOnline/problem.php?id=1061 (题目链接)题意:给定n天,第i天需要ai个志愿者,有m类志愿者,每类志愿者工作时间为[l,r],花费为ci,求最小花费。Solution 我用的是线性规划单纯形法。 首先要用线性规划的对偶性构造出标准形式的线性规划。对偶性是什么呢。 给定一个最大化目标的线性规划,我
2016-09-03 16:49:16 511
原创 【bzoj2823】 AHOI2012—信号塔
http://www.lydsy.com/JudgeOnline/problem.php?id=2823 (题目链接)题意:求最小点覆盖Solution 关于最小点覆盖的做法,论文里面都有。其实真正麻烦的是求三角形的外心。 给定a(x1,y1) b(x2,y2) c(x3,y3)求外接圆心坐标O(x,y)。1. 首先,外接圆的圆心是三角形三条边的垂直平分线的交点,我们根据圆心到顶点的
2016-08-30 11:45:30 723
原创 【poj3714】 Raid
http://poj.org/problem?id=3714 (题目链接)现在才搞平面最近点对。。感觉有点尴尬题意:给出平面上两组点,每组n个,求两组点之间最短距离Solution1 平面最近点对,分治即可。 将点按横坐标排序,然后每次二分成左边和右边分别计算最小距离,再计算中间的最小距离,这里需要把中间符合条件的点按照纵坐标排序,然后当当前枚举的两点的纵坐标之差大于答案时break,否
2016-08-30 10:28:47 641
原创 【poj1015】 Jury Compromise
http://poj.org/problem?id=1015 (题目链接)题意:随机挑选n个人作为陪审团的候选人,然后再从这n个人中选m 人组成陪审团。选m人的办法是:控方和辩方会根据对候选人的喜欢程度,给所有候选人打分,分值从0 到20。为了公平起见,法官选出陪审团的原则是:选出的m个人,必须满足辩方总分D和控方总分P的差的绝对值|D-P|最小。如果有多种选择方案的 |D-P| 值相同,那么选辩控
2016-08-28 21:17:24 589
原创 【bzoj1037】 ZJOI2008—生日聚会Party
http://www.lydsy.com/JudgeOnline/problem.php?id=1037 (题目链接)题意:有n个boy和m个girl排成一排,求使得任意一段的boy个数girl个数的差不超过k的方案数。Solution dp。 对于一段确定的人,设为A,那么只有A的后缀中男孩与女孩个数之差和女孩与男孩个数之差的最大值才会影响此次决策。如此便可以定义状态f[i][j][k
2016-08-24 17:08:20 410
原创 【bzoj1046】 HAOI2007—上升序列
http://www.lydsy.com/JudgeOnline/problem.php?id=1046 (题目链接)题意:给出一个数列,求数列中长度为L的下标字典序最小的上升子序列。Solution 将数列倒过来求一遍不上升子序列,记录下以当前数为结尾的最长不上升序列的长度,也就是记录下了原数列中以当前数为开头的最长上升序列的长度。这样就很好处理了。代码:// bzoj1046#inclu
2016-08-24 16:14:07 441
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人