摘要: bzoj3196Tyvj1730二逼平衡树 题意: 维护一个数列,操作:查询k在区间内的排名、查询区间内排名为k的值3、修改某一位上的数值、查询k在区间内的前驱(前驱定义为小于x,且最大的数)、查询k在区间内的后继(后继定义为大于x,且最小的数) 题解: 线段树套treap,我写了一个星期QAQ第一 阅读全文
posted @ 2016-07-20 20:36 YuanZiming 阅读(242) 评论(0) 推荐(0) 编辑
摘要: bzoj1296[SCOI2009]粉刷匠 题意: 粉刷N条木板,每条木板M 个格子,每个格子要被刷成红色或蓝色。每次只能选择一条木板上一段连续的格子涂上一种颜色。 每个格子最多只能被粉刷一次。 如果只能粉刷 T 次,求最多能正确粉刷的格子数。未被粉刷或者颜色错的格子算错误粉刷。 题解: 非常容易想 阅读全文
posted @ 2016-07-20 20:30 YuanZiming 阅读(238) 评论(0) 推荐(1) 编辑
摘要: bzoj2243[SDOI2011]染色 题意: n点无根树,2类操作:将节点a到节点b路径上所有点都染成颜色c、询问节点a到节点b路径上的颜色段数量。 题解: 有点恶心的链剖,可以用包含区间颜色段数,左端点颜色,右端点颜色的结构体存储查询的结果。首先是线段树节点除了要保存区间颜色段数还要保存左右端 阅读全文
posted @ 2016-07-20 20:25 YuanZiming 阅读(151) 评论(0) 推荐(0) 编辑
摘要: bzoj4034[HAOI2015]T2 题意: N点树,以点 1 为根,且树点有边权。三种操作:把某个节点点权增加 a 、某个节点为根的子树中所有点的点权都增加 a 、询问某个节点到根的路径中所有点的点权和。 题解: 本题链剖可过。第二个操作只要每次在构造链的时候找到子树中在链中位置最大的节点,然 阅读全文
posted @ 2016-07-20 20:15 YuanZiming 阅读(251) 评论(0) 推荐(0) 编辑
摘要: bzoj2661[BeiJing wc2012]连连看 题意: 给出一个闭区间[a,b]中的全部整数,如果其中某两个数x,y(设x>y)的平方差x2-y2是一个完全平方数z2,并且y与z互质,那么就可以将x和y一起消除,同时得到x+y点分数。求消除的数对尽可能多的前提下分数的最大值。 题解: 每个数 阅读全文
posted @ 2016-07-20 20:09 YuanZiming 阅读(594) 评论(0) 推荐(0) 编辑
摘要: bzoj1406[AHOI2007]密码箱 题意: 输出1到n-1中平方后模n等于1的整数 题解: 设所求数x,化简得(x+1)(x-1)=n*k,设n1*n2等于k,(x+1)%n1==0,(x-1)%n2==0,因此n1、n2都为n的因数,且一个≤sqrt(n),一个≥(sqrt(n))。据说i 阅读全文
posted @ 2016-07-20 20:02 YuanZiming 阅读(278) 评论(0) 推荐(0) 编辑
摘要: bzoj1452[JSOI2009]Count 题意: n*m矩阵,支持两个操作,修改某个格子权值和查询某个子矩阵特定权值出现次数。n,m≤300,权值为1到100的整数。 题解: 原来二维前缀和也可以用树状数组维护,只要那个不断增加/减少lowbit的循环再嵌套一层就行了。同时因为权值是1到100 阅读全文
posted @ 2016-07-20 19:58 YuanZiming 阅读(287) 评论(0) 推荐(0) 编辑
摘要: bzoj1934[Shoi2007]Vote 善意的投票 题意: n个小朋友通过投票来决定睡不睡午觉。每个人都有自己的主见,但也可以投和自己本来意愿相反的票。冲突总数为好朋友之间发生冲突的总数加上和自己本来意愿发生冲突的人数。求最小冲突数。 题解: 最小割,s向每个选1的人连边流量为1,每个选0的人 阅读全文
posted @ 2016-07-20 19:53 YuanZiming 阅读(405) 评论(0) 推荐(0) 编辑
摘要: bzoj1787[Ahoi2008]Meet 紧急集合 bzoj1832[AHOI2008]聚会 题意: 给个树,每次给三个点,求与这三个点距离最小的点。 题解: 倍增求出两两之间的LCA后,比较容易理解的做法是挑出两个LCA再做一次LCA,比较所有挑法。但画kan出ti图jie可知其中有两个LCA 阅读全文
posted @ 2016-07-20 19:45 YuanZiming 阅读(216) 评论(0) 推荐(0) 编辑
摘要: bzoj1293[SCOI2009]生日礼物 题意: 数轴上N个点,分为K种。可以有多个点出现在同一个位置上。需要一个最短区间使里面有K种点,求这个区间长度。N≤1000000 题解: 先排序,然后用两个指针分别指向区间两个端点,每次l指针往左移并更新答案直到区间里没有K种点,再把r指针向右移直到区 阅读全文
posted @ 2016-07-20 19:27 YuanZiming 阅读(224) 评论(0) 推荐(0) 编辑
摘要: bzoj1221[HNOI2001]软件开发 题意: n天,每天需要ai条消毒毛巾,这种消毒毛巾使用一天后必须再做消毒处理后才能使用。消毒方式有两种,A种方式的消毒需要a天时间,一条费用fA,B种方式的消毒需要b天,一条费用fB,买一块新毛巾的费用为f(新毛巾是已消毒的,当天可以使用),求最小费用。 阅读全文
posted @ 2016-07-20 19:23 YuanZiming 阅读(302) 评论(0) 推荐(0) 编辑
摘要: bzoj1295[SCOI2009]最长距离 题意: N*M块地,如果两块地都没有障碍物,则互相可达。如果两块地互相可达(可经过其他地)则它们之间的距离为它们中心点的欧几里得距离,求如果能移走不大于T个障碍物,土地间的最大距离。N,M≤30 题解: 把经过一个障碍物视为边长度为1,求出每两个点之间要 阅读全文
posted @ 2016-07-20 19:19 YuanZiming 阅读(182) 评论(0) 推荐(0) 编辑
摘要: bzoj1218[HNOI2003]激光炸弹 题意: 坐标系上有n个目标,每个目标有一个价值,现在求一个边与坐标轴平行,边长为R的正方形,使在其内部(原题是不包括边界,然而实际上不是这样)的目标价值最大。 题解: 预处理一下以横纵坐标为节点的二维前缀和,然后枚举正方形右上角坐标即可。注意可以将坐标系 阅读全文
posted @ 2016-07-20 19:12 YuanZiming 阅读(378) 评论(0) 推荐(0) 编辑
摘要: bzoj1196[HNOI2006]公路修建问题 题意: 修n-1条公路将n个点连通,每个点可建一级公路也可建二级公路,要求一级公路必须有k条,要求花费最多的公路花费最少。 题解: 首先二分最大花费,接着判定:先在不产生环的前提下(用并查集维护)让每条路尽量修一级公路,如果最后无法构成树则考虑修二级 阅读全文
posted @ 2016-07-20 19:07 YuanZiming 阅读(615) 评论(0) 推荐(0) 编辑
摘要: bzoj1588[HNOI2002]营业额统计 题意: n天,每天得到一个值,要求输出每一天和这天得到的值相差最小的之前天得到的值与这个值的差的和。n不知道,不过O(nlog2n)可写。 题解: 说是平衡树模板题,不过可以用set水过去。先在set插入一个-INF和INF防溢出(yyl大爷教我的)每 阅读全文
posted @ 2016-07-20 18:57 YuanZiming 阅读(174) 评论(0) 推荐(0) 编辑
摘要: bzoj2039[2009国家集训队]employ人员雇佣 题意: 有N个经理,Ei,j表示i经理对j经理的了解程度,当经理i和经理j同时被雇佣时,利润增加Ei,j*2。同时,雇佣每一个经理都需要花费一定的金钱Ai。没有被雇佣的人会被竞争对手所雇佣,使得所赚得的利润减少Ei,j(意思是经理i和j如果 阅读全文
posted @ 2016-07-20 18:51 YuanZiming 阅读(515) 评论(0) 推荐(0) 编辑