
bzoj
MashiroSky
这个作者很懒,什么都没留下…
展开
-
【bzoj2286】 消耗战
http://www.lydsy.com/JudgeOnline/problem.php?id=2286 (题目链接)一个小小的细节,WA了一天,欲哭无泪了。。题意:给出一个n个节点的带权树,总共m次询问,每次询问给出K个节点标号,求出切断这些节点与1号节点的路径的最少花费。solution 构造虚数+树形dp。 首先,有关虚树的题有一个特征,就是题目会给出sigema(k[i])的范围,保证不原创 2016-07-20 20:31:36 · 895 阅读 · 0 评论 -
【bzoj1502】 NOI2005—月下柠檬树
http://www.lydsy.com/JudgeOnline/problem.php?id=1502 (题目链接)今天考试题,从来没写过圆的面积之类的东西。。GG题意:一颗树由n个圆台组成,现在有倾斜角为alpha的光,不计树干阴影,光线沿直线传播,求这个树在水平地面投影的面积。Solution Simpson积分法。 直接蒯一份题解算了(http://blog.youkuaiyun.com/w转载 2016-09-06 21:18:48 · 586 阅读 · 0 评论 -
【bzoj1191】 HNOI2006—超级英雄Hero
http://www.lydsy.com/JudgeOnline/problem.php?id=1191 (题目链接)题意:有m个问题,n个锦囊妙计,每个锦囊妙计可以解决一个问题,每个问题有两个锦囊妙计可以解决,求最大可以解决几个问题。Solution 裸的二分图匹配。将m个问题看成一组节点,n个锦囊妙计看成一组节点,求它们的最大匹配。注意当一个问题回答失败后游戏会直接结束,find返回0时b原创 2016-08-13 15:17:27 · 507 阅读 · 0 评论 -
【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 · 433 阅读 · 0 评论 -
【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 · 538 阅读 · 0 评论 -
【bzoj1046】 HAOI2007—上升序列
http://www.lydsy.com/JudgeOnline/problem.php?id=1046 (题目链接)题意:给出一个数列,求数列中长度为L的下标字典序最小的上升子序列。Solution 将数列倒过来求一遍不上升子序列,记录下以当前数为结尾的最长不上升序列的长度,也就是记录下了原数列中以当前数为开头的最长上升序列的长度。这样就很好处理了。代码:// bzoj1046#inclu原创 2016-08-24 16:14:07 · 467 阅读 · 0 评论 -
【bzoj1050】 旅行comf
http://www.lydsy.com/JudgeOnline/problem.php?id=1050 (题目链接)题意:给出一个无向图,求图中两点间某条路径使得最大权值除以最小权值的值最小Solution 今天考试题,写了个萎的dijistra,30分。。。 正解是最小生成树(其实并不是最小)。我们想让路径中最大的边和最小的边相差尽可能小,也就是说将边按权值从小到大排序后,路径就是序原创 2016-08-24 15:27:19 · 463 阅读 · 0 评论 -
【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 · 743 阅读 · 0 评论 -
【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 · 470 阅读 · 0 评论 -
【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 · 1165 阅读 · 0 评论 -
【bzoj4010】 HNOI2015—菜肴制作
http://hzwer.com/6820.html (题目链接)题意:给出一张无向图要求出一个拓扑序列满足1的位置最靠前 ,在保证上面的条件下使2的位置最靠前 ,在保证上面的条件下使3的位置最靠前 …… Solution 构造逆拓扑序,套个堆每次选出编号最大的加入答案,输出答案时从后往前输出。 有点难想,但是脑补一下还是OK的。代码:// bzoj4010#include<algor原创 2016-09-25 11:02:29 · 520 阅读 · 0 评论 -
【bzoj1562】 NOI2009—变换序列
http://www.lydsy.com/JudgeOnline/problem.php?id=1562 (题目链接)题意:给出一个序列(0~n-1),这个序列经过某个变换会成为另外一个序列,但是其中的元素不会改变,给出初始序列与变换后的序列每一位上的“距离”,求字典序最小的变换序列。Solution 每个位置上只有2种情况,很明显的二分图匹配。因为要求字典序最小,我们考虑匈牙利算法的运行方式原创 2016-09-23 15:42:02 · 654 阅读 · 0 评论 -
【bzoj3150】 cqoi2013—新Nim游戏
www.lydsy.com/JudgeOnline/problem.php?id=3105 (题目链接)题意:在第一个回合中,第一个游戏者可以直接拿走若干个整堆的火柴。可以一堆都不拿,但不可以全部拿走。第二回合也一样,第二个游戏者也有这样一次机会。从第三个回合(又轮到第一个游戏者)开始,规则和Nim游戏一样。问是否有先手必胜策略。Solution 线性基,拟阵证明?不会。代码:// bzoj3原创 2016-09-20 17:16:25 · 511 阅读 · 0 评论 -
【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 · 507 阅读 · 0 评论 -
【bzoj2819】 Nim
www.lydsy.com/JudgeOnline/problem.php?id=2819 (题目链接)题意:动态树上路径异或和。Solution Nim取石子游戏的sg值就是每堆石子的异或和,所以问题的实质就是树上路径异或和。 看到题目,树上区间问题果断树链剖分,结果TLE,算了下复杂度nlog2n,结果等于180500000。。。不知道为什么网上还是有蛮多人用树链剖分A了,难道是我写原创 2016-09-18 21:54:52 · 431 阅读 · 0 评论 -
【bzoj2463】 谁能赢呢?
www.lydsy.com/JudgeOnline/problem.php?id=2463 (题目链接)题意:一个n*n的棋盘,开始时左上角有一个棋子,每次可以把棋子向4个方向移动,但不能移动到曾经走过的格子上,无法移动者输,问是否存在先手必胜策略。Solution 手玩了一下n<=4的情况,发现当n是偶数时就有必胜策略,交上去果然AC。。然而不会证明,于是翻了下别人的题解。 当n原创 2016-09-18 22:20:08 · 529 阅读 · 0 评论 -
【bzoj2115】 Xor
www.lydsy.com/JudgeOnline/problem.php?id=2115 (题目链接)题意:给出一张图,可能有重边和自环,在图中找出一条从1~n的路径,使得经过的路径的权值的异或和最大,每条边可以重复经过并且重复计算异或和。Solution 刚看到这道题,想了10分钟完全没有思路,于是就膜了题解。 我们先把图看成一棵树,那么我们所需要找出的路径可以分成一些环和一条从1~原创 2016-09-19 23:01:06 · 468 阅读 · 0 评论 -
【bzoj1179】 Apio2009—Atm
www.lydsy.com/JudgeOnline/problem.php?id=1179 (题目链接)题意:给出一张有向图,每个节点有点权。标记一些点,找出一条路径,可以重复经过一条边,使得总点权和最大。重复经过一个点不能重复算点权。Solution 今日考试题,Dijkstra不幸Gi烂。 WARNING:Dijkstra处理最长路时会出现一些不好的情况,所以千万不要用!! 既原创 2016-09-20 14:48:30 · 671 阅读 · 0 评论 -
【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 · 415 阅读 · 0 评论 -
【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 · 550 阅读 · 0 评论 -
【bzoj1857】 Scoi2010—传送带
http://www.lydsy.com/JudgeOnline/problem.php?id=1857 (题目链接)题意:给出两条线段AB和CD,在AB上的速度为P,在CD上的速度为Q,在AB,CD之外的平面上速度为R,求从A到D的最短时间。Solution 三分套三分。 三分法是个很基础的东西,当问题的答案呈现出的函数图像是单峰的那么就可以使用三分法求出它的最值,具体操作与二分法差原创 2016-08-21 22:08:47 · 509 阅读 · 0 评论 -
【bzoj4241】 历史研究
http://www.lydsy.com/JudgeOnline/problem.php?id=4241 (题目链接)看到题目就联想到了【bzoj2809】 Apio2012—dispatching。想了想权值分块+莫队,发现不好维护块内最值,又看了看80s的时间,于是怒水一发线段树+莫队,结果先WA后TLE,不断TLE,无论怎么改常数都不行,难道nlogn*sqrt(n)就是过不了吗!!不爽,蒯个原创 2016-07-31 21:22:37 · 464 阅读 · 0 评论 -
【bzoj2152】 聪聪可可
http://www.lydsy.com/JudgeOnline/problem.php?id=2152 (题目链接)题意:给出一棵n个节点的带权树,求有多少点对的距离是3的倍数。solution 点分治。对于每个重心统计出每棵子树到重心的距离%3=0/1/2的点的数量即可。求出ans后与n²进行下gcd出解。代码:// bzoj2152#include<algorithm>#include<原创 2016-07-18 16:27:56 · 533 阅读 · 0 评论 -
【bzoj2809】 Apio2012—dispatching
http://www.lydsy.com/JudgeOnline/problem.php?id=2809 (题目链接)题意:给出一棵树,每个节点有两个权值c,L,分别代表话费和领导力,在树中找到一个点i,并且找到这个点子树中的一些点组成一个集合,使得集合中的所有点的c之和不超过M,且L[i]*集合中元素个数和最大。solution 听说这道题正解是可并堆,可是并不会做,我们考虑换一种方法。正好原创 2016-07-31 15:05:17 · 445 阅读 · 0 评论 -
【bzoj2120】 数颜色
http://www.lydsy.com/JudgeOnline/problem.php?id=2120 (题目链接)题意:给出一个n个数,m个询问,每次询问一个区间或修改一个数,求区间内不同的数有多少个。solution 分块。每次修改就暴力nlogn重新构块。 对于分块的话,代码很好理解。代码:// bzoj2120#include<algorithm>#include<iost原创 2016-07-29 16:10:39 · 395 阅读 · 0 评论 -
【bzoj2654】 tree
http://www.lydsy.com/JudgeOnline/problem.php?id=2654 (题目链接)今天考试题,以为是神题不可做,直接放弃了。。没想到这么水。。题意:给你一个无向带权连通图,每条边是黑色或白色。让你求一棵最小权的恰好有need条白色边的生成树。题目保证有解。solution 我们考虑把白边的权值增加,因为无论白边的权值增加多少,最小生成树中的白边不会改变。所以我们原创 2016-07-15 16:26:46 · 622 阅读 · 0 评论 -
【bzoj2038】 小Z的袜子(hose)
http://www.lydsy.com/JudgeOnline/problem.php?id=2038 (题目链接)转自:http://blog.youkuaiyun.com/bossup/article/details/39236275题意:给出n个数以及m个区间,求在每个区间内选出两个数,有多大的概率使选出的两个数相等。solution 对于L,R的询问。设其中颜色为x,y,z….的袜子的个数为a,转载 2016-07-28 17:14:16 · 433 阅读 · 0 评论 -
【bzoj3572】 世界树
http://www.lydsy.com/JudgeOnline/problem.php?id=3572 (题目链接)题意:给出一棵n个节点的树,q次询问,每次给出k个关键点。规定对于树上每个节点归属于离它最近的关键点管辖,若与若干关键点距离相同取编号小的关键点,求每个关键点管辖多少个点(可以管辖自己)。solution 先构造虚树,具体过程见 http://blog.youkuaiyun.com/Mas原创 2016-07-25 11:24:14 · 405 阅读 · 0 评论 -
【bzoj3611】 大工程
http://www.lydsy.com/JudgeOnline/problem.php?id=3611 (题目链接)题意:给出一个n个节点的树,每条边边权为1,给出q个询问,每次询问K个关键点,求出这k个点之间的两两距离和、最小距离和最大距离。solution 构造虚树,见 http://blog.youkuaiyun.com/MashiroSky/article/details/51971718 之后在原创 2016-07-23 15:50:12 · 328 阅读 · 0 评论 -
【bzoj2456】 mode
http://www.lydsy.com/JudgeOnline/problem.php?id=2456 (题目链接)只看了一眼,直觉便告诉我这是水题。于是跟某码农打赌说10分钟做出来叫爸爸,结果输了。。。题意:给你一个n个数的数列,其中某个数出现了超过n div 2次即众数,请你找出那个数。空间限制1mb。solution 此题乃鬼题一道,鉴定完毕。 题目要求求众数,而众数x在整个数列中出现了原创 2016-07-16 20:08:37 · 498 阅读 · 0 评论 -
【bzoj1853】 Scoi2010—幸运数字
http://www.lydsy.com/JudgeOnline/problem.php?id=1853 (题目链接)今天考试考了容斥,结果空知道结论却不会写= =题意:求区间中不含6,8两个数字及由6,8组成的数字的倍数的的数有几个Solution 容斥原理。 先把所有的幸运数字都蒯到一个数组里,将两两之间可以整除的数只留下一个小的。 接下来如果暴力组合统计答案的话肯定会TL原创 2016-08-04 20:30:20 · 558 阅读 · 0 评论 -
【bzoj1016】 JSOI2008—最小生成树计数
http://www.lydsy.com/JudgeOnline/problem.php?id=1016 (题目链接)题意:求图的最小生成树计数。Solution %了下题解,发现要写矩阵树,150++的程序什么鬼。于是就蒯了hzwer的简便方法。 将边按照权值大小排序,将权值相同的边分到一组,统计下每组分别用了多少条边。然后对于每一组进行dfs,判断是否能够用这一组中的其他边达到相同的原创 2016-09-11 10:17:13 · 644 阅读 · 0 评论 -
【bzoj1211】 HNOI2004—树的计数
http://www.lydsy.com/JudgeOnline/problem.php?id=1211 (题目链接)题意:一个有n个结点的树,设它的结点分别为v1, v2, …, vn,已知第i个结点vi的度数为di,问满足这样的条件的不同的树有多少棵。给定n,d1, d2, …, dn,编程需要输出满足d(vi)=di的树的个数。Solution prufer序列,明明的烦恼简化版。代码:原创 2016-08-08 16:32:58 · 397 阅读 · 0 评论 -
【bzoj1036】 ZJOI2008—树的统计Count
http://www.lydsy.com/JudgeOnline/problem.php?id=1036 (题目链接)题意:动态维护树上两点间最大权值和权值和。Solution 裸树链剖分。 这一篇题解并不是本博客的重点。我在找本题的数据生成器的时候发现了一篇神奇的博客。关于如何制造出一棵树的数据,似乎用到了purfer。数据生成器:#include<cstdio>#inclu原创 2016-08-06 19:46:03 · 440 阅读 · 0 评论 -
【bzoj1005】 HNOI2008—明明的烦恼
http://www.lydsy.com/JudgeOnline/problem.php?id=1005 (题目链接)题意:给出标号为1到N的点,以及某些点最终的度数,允许在任意两点间连线,可产生多少棵度数满足要求的树?Solution prufer编码。关于prufer,有一篇博客写得很好,还运用组合数学求出了公式,可惜代码是java。这道题还要写高精度,高精度除法太麻烦了,因为组合数一定是原创 2016-08-07 11:38:39 · 617 阅读 · 0 评论 -
【bzoj3289】 Mato的文件管理
http://www.lydsy.com/JudgeOnline/problem.php?id=3289 (题目链接)题意:求区间逆序对Solution 离线无修改查询,莫队转移;树状数组维护区间和。 关键: ①在一列数的后面添加一个数,逆序对数会增加 数列中比它大的数的个数。 ②在一列数的后面删除一个数,逆序对数会减少 数列中比它大的数的个数。 ③在一列数的前面原创 2016-08-06 16:09:25 · 479 阅读 · 0 评论 -
【bzoj3757】 苹果树
http://www.lydsy.com/JudgeOnline/problem.php?id=3757 (题目链接)MD调了好久,最后蒯了几个标程交上去,没想到都RE了。。。最后才看到: = =题意:求树上两点间路径上有多少个不同的点权。Solution 像这种树链剖分解决不了的问题,大概就是树上莫队。 我们dfs一遍对树分块,这个很简单,不会的见bzoj1086。之后对询问(u原创 2016-08-02 17:53:22 · 507 阅读 · 0 评论 -
【bzoj1042】 HAOI2008—硬币购物
http://www.lydsy.com/JudgeOnline/problem.php?id=1042 (题目链接)题意:共有4种硬币,面值分别为c1,c2,c3,c4。某人去商店买东西,去了tot次。每次带di枚ci硬币,买s的价值的东西。请问每次有多少种付款方法。Solution 容斥原理。 设F[i]为不考虑每种硬币的数量限制的情况下,得到面值i的方案数。则状态转移方程为 F[原创 2016-08-04 22:16:40 · 475 阅读 · 0 评论 -
【bzoj1086】 scoi2005—王室联邦
http://www.lydsy.com/JudgeOnline/problem.php?id=1086 (题目链接)本来是来学树上分块的,没想到正解是贪心+dfs。。。题意:求将树分为几个联通块,每个联通块大小大于B小于3B,是否可行。Solution1 题都没看就翻了题解。。发现时贪心+dfs。 一遍dfs即可。注意到以x为根节点时,其儿子s,则子树s中与s相连的节点的连通块,如果要原创 2016-08-01 17:20:05 · 560 阅读 · 0 评论 -
【bzoj3991】 寻宝游戏
http://www.lydsy.com/JudgeOnline/problem.php?id=3991 (题目链接)题意:给出一个n个节点的带权树,m次操作每次修改一个关键点,求每次操作后,从其中任意一个关键点出发走遍所有关键点再走回起点所需的最小花费。solution 假如没有修改操作的话,就像一个简单的在虚树上树形DP,方程如下: f[i]=sigma{f[son]}+sigma{e.w原创 2016-07-21 16:00:24 · 765 阅读 · 0 评论