07 2016 档案
摘要:bzoj1601[Usaco2008 Oct]灌水 题意: n块土地,要让它们全部都灌到水。使一个土地灌到水需要在这块土地上建水库或使它直接或间接与有水库的土地相连。给出在每块土地上建水库的费用和土地间两两连边的费用,求最小费用。n≤300 题解: 建一个超级源,让它们和所有土地连边,费用为在这块土
阅读全文
摘要:bzoj1650[Usaco2006 Dec]River Hopscotch 跳石子 题意: 数轴上有n个石子,第i个石头的坐标为Di,现在要从0跳到L,每次跳都从一个石子跳到相邻的下一个石子。现在问移走这M个石子后,相邻两个石子及0到最前一个石子及最后一个石子到L距离的最小值的最大值是多少。n≤5
阅读全文
摘要:bzoj1664[Usaco2006 Open]County Fair Events 参加节日庆祝 题意: 有N个节日,每个节日有个开始时间,及持续时间。牛想尽可能多的参加节日,问最多可以参加多少。注意牛的转移速度是极快的,不花时间,且节日必须完整参加。N≤10000,开始时刻和持续时间≤10000
阅读全文
摘要:bzoj1806[Ioi2007]Miners 矿工配餐 题意: 现有两个煤矿,有三种类型的食品车。每当一个新的食品车到达煤矿时,矿工们就会比较这种新的食品和前两次(或者少于两次,如果前面运送食品的次数不足两次)的食品。如果这几次食品车都是同一类型的食品,则矿工们产出一个单位的煤; 如果这几次食品车
阅读全文
摘要:bzoj3195[Jxoi2012]奇怪的道路 题意: n座城市。m条道路连接在这些城市之间,一对城市之间可能存在多条道路。对于任何一条道路,设它连接的两个城市分别为u和v,必定满足1 <=|u - v| <= K。此外,任何一个城市都与恰好偶数条道路相连(0也被认为是偶数)。这n个城市之间究竟有多
阅读全文
摘要:bzoj4590[Shoi2015]自动刷题机 题意: 有一种自动刷题机。每秒,有两种可能的结果:写了x行代码,或删掉了之前写的y行代码。(如果y大于当前代码长度则相当于全部删除。)一旦自动刷题机在某秒结束时积累了大于等于n行的代码,它就会自动AC一题,然后新建一个文件开始写下一题。知道共切了k道题
阅读全文
摘要:bzoj4552[Tjoi2016&Heoi2016]排序 题意: 给出一个1到n的全排列,现在对这个全排列序列进行m次局部排序,排序分为两种:1:(0,l,r)表示将区间[l,r]的数字升序排序2:(1,l,r)表示将区间[l,r]的数字降序排序,最后询问第q位置上的数字。 题解: 二分最后这个数
阅读全文
摘要:bzoj3155Preprefix sum 题意: 询问一个数组前缀和数组的前缀和,支持单点修改。 题解: SSi=sigma(i,1,n)(n-i+1)*ai=(n+1)*Si-sigma(i,1,n)i*ai。然后就只要用树状数组维护ai和i*ai的前缀和就行了。 代码: 20160630
阅读全文
摘要:bzoj2463[中山市选2009]谁能赢呢? 题意: 给定一个n×n的棋盘,一个石头被放在棋盘的左上角。他们轮流移动石头。每一回合,选手只能把石头向上,下,左,右四个方向移动一格,并且要求移动到的格子之前不能被访问过。谁不能移动石头了就算输。假如小明先移动石头,而且两个选手都以最优策略走步,问最后
阅读全文
摘要:bzoj3668[Noi2014]起床困难综合症 题意: 求0到m的一个数,使它被n次操作后最大。操作三种:&t、|t、^t,t为操作中给定的数。n≤100000,m,t≤1000000000 题解: 先求出0经过n次操作后得到的数,然后对于小于等于m的每个二进制位从大到小考虑一下当这位为1时是否比
阅读全文
摘要:bzoj1067[SCOI2007]降雨量 题意: “X年是自Y年以来降雨量最多的”。它的含义是X年的降雨量不超过Y年,且对于任意Y<Z<X,Z年的降雨量严格小于X年。由于有些年份的降雨量未知,有的说法是可能正确也可以不正确的。要求对于一个说法判断它是对、错、有可能。(即使有降雨量未知也有可能可以推
阅读全文
摘要:bzoj4384[POI2015]Trzy wieże 题意: 给定一个长度为n的仅包含'B'、'C'、'S'三种字符的字符串,请找到最长的一段连续子串,使得这一段要么只有一种字符,要么有多种字符,但是没有任意两种字符出现次数相同。 题解: 恶心的树状数组题。首先先求出只有一种字符的最长字串。然后预
阅读全文
摘要:bzoj1609[Usaco2008 Feb]Eating Together麻烦的聚餐 题意: 一个序列只由1﹑2﹑3三种数组成。求最少要改变多少个数使它变成不下降序列或不上升序列。序列大小≤30000 题解: DP。设f[i][j]表示正在考虑第i个数,上一个数是j。求不下降序列最少改变个数方程:
阅读全文
摘要:bzoj1620[Usaco2008 Nov]Time Management 时间管理 题意: n个任务,每个有一个所需时间和最晚完成时刻,问最晚要从什么时候开始工作。n≤1000 题解: 贪心,按最晚完成时刻从早到晚排序,如果当前任务来不及完成,就将前面的任务往前推,否则累积一个“自由时间”。当推
阅读全文
摘要:bzoj1689[Usaco2005 Open] Muddy roads 泥泞的路 题意: 数轴上n个互不覆盖的区间,问要用多少个长为L的线段覆盖。n≤10000 题解: 排序区间,然后从每个区间左端点开始铺木板,如果最后一块木板能够铺到下一个区间就铺,以此类推。 代码: 20160729
阅读全文
摘要:bzoj1626[Usaco2007 Dec]Building Roads 修建道路 题意: 坐标系上n个点,其中一些点连了边,问使点连通还要连边的最小总长度。n≤1000。 题解: 用并查集维护连通块,先将连好边的点合并,然后再按长度从小到大连边。 代码: 20160727
阅读全文
摘要:bzoj1610[Usaco2008 Feb]Line连线游戏 题意: n个点,问最多能画多少条线使两两不平行。n≤200。 题解: 枚举所有线,排序后去重。 代码: 20160727
阅读全文
摘要:bzoj1666[Usaco2006 Oct]Another Cow Number Game 奶牛的数字游戏 题意: 一个数为偶数就让它/2,为奇数就让它*3+1,问多少步可以让它变成1。n≤1000000 题解: 模拟。 代码: 20160727
阅读全文
摘要:bzoj1679[Usaco2005 Jan]Moo Volume 牛的呼声 题意: N只牛,每只牛都与其他N-1只牛聊着天。一个对话的进行,需要两只牛都按照和她们间距离等大的音量吼叫,计算音量和。N≤10000 题解: 第i只牛与前i-1只牛对话的音量和是x=sum[1..i-1]+sum[2..
阅读全文
摘要:bzoj1606[Usaco2008 Dec]Hay For Sale 购买干草 题意: 容器体积为c,n个物体,每个有一个体积,求不超过容器能放入的最大体积。n≤5000,c≤50000 题解: 裸01背包。 代码: 1 #include <cstdio> 2 #include <cstring>
阅读全文
摘要:bzoj1264[AHOI2006]基因匹配Match 题意: 某种序列由n种数组成,每种数在该序列中正好出现5次。对于两个这样的序列s1和s2,如果存在一个序列u同时成为s1和s2的子序列,则称u是s1和s2的公共子序列。子序列的概念:若从一个序列s中任意抽取一些数字,将它们仍按在s中的顺序排列成
阅读全文
摘要:bzoj4518[Sdoi2016]征途 题意: n个数,分成m段使每段和的方差尽可能小。 题解: 朴素的dp方程:f[i,m]=f[j,m-1]+(sum[i]-sum[j])2,j∈[1,i-1](sum[i]-sum[j]不用减平均数的原因是最后可以化简成f[n,m]*m-sum[n])复杂度
阅读全文
摘要:bzoj2049[Sdoi2008]Cave 洞穴勘测 题意: 一些点,三种操作:点与点连边、点与点分离、询问两个点是否连通。 题解: 比上面那道还弱的LCT,只要注意记得翻转就行。 代码: 1 #include <cstdio> 2 #include <cstring> 3 #include <a
阅读全文
摘要:bzoj4514[Sdoi2016]数字配对 题意: 有 n 种数字,第 i 种数字是 ai、有 bi 个,权值是 ci。若两个数字 ai、aj 满足ai 是 aj 的倍数且 ai/aj 是一个质数,那么这两个数字可以配对,并获得 ci×cj 的价值。一个数字只能参与一次配对,可以不参与配对。在获得
阅读全文
摘要:bzoj2429[HAOI2006]聪明的猴子 题意: 平面上N个点(任意两个点的坐标都不相同)。现已知M个猴子的最大跳跃距离,还知道N个点坐标,统计有多少个猴子可以在所有点上觅食。 题解: 题目中隐含了一个条件,就是猴子可以从任意点出发。因此我们可以确定一个点,求出它到所有点的最小距离的最大值,然
阅读全文
摘要:bzoj2843极地旅行社 题意: 一些点,每个点有一个权值。有三种操作:点与点连边,单点修改权值,求两点之间路径上点的权值和(需要判输入是否合法) 题解: 以前一直想不通为什么神犇们的模板中LCT在link和cut后都要在根节点打翻转标记。现在明白了,因为只有这样才能保持深度的正确性,以前没有因此
阅读全文
摘要:bzoj2751[HAOI2012]容易题(easy) 题意: 已知一个数列A对于所有的A[i]都是1~n的自然数,一些A[i]不能取一些值,求出所有可能的数列的积的和 mod 1000000007的值。 题解: 题目中的n≤109实际上是109……首先推个方程s[l,r]=s[l,k]*s[k+1
阅读全文
摘要:bzoj3442学习小组 题意: 共有n个学生,m个学习小组,每个学生只愿意参加其中的一些学习小组,且一个学生最多参加k个学习小组。每个学生参加学习小组财务处都收一定的手续费,不同的学习小组有不同的手续费。若有a个学生参加第i个学习小组,财务处支付奖励Ci*a^2元。在参与学生(而不是每个学习小组的
阅读全文
摘要:bzoj4423[AMPPZ2013]Bytehattan 题意: n*n的顶点图,一开始相邻顶点均有边相连,现在删掉k条边,希望知道每次删边后边的两个端点是否联通。n≤1500,k≤2*n*(n-1),边最多被删一次。 题解: 隐隐觉得是并查集,但不知道删边怎么表示。在膜拜了题解后明白原来可以转成
阅读全文
摘要:bzoj4591[Shoi2015]超能粒子炮·改 题意: 求(sigma(i,0,k)C(n,i))%2333。n,k≤1018 题解: 根据Lucas定理(我不会),C(n,k)%2333=C(n/2333,k/2333)*C(n%2333,k%2333),故可以进行一些化简(把模省去了) (s
阅读全文
摘要:bzoj2299[HAOI2011]向量 题意: 有(a,b), (a,-b), (-a,b), (-a,-b), (b,a), (b,-a), (-b,a), (-b,-a)这些向量,问能否拼出另一个向量(x,y)。 题解: 裴蜀定理(我不会)(实际上是与解同余方程的知识相关的)。题目可以转化为用
阅读全文
摘要:bzoj3223Tyvj 1729 文艺平衡树 题意: 一个数列,支持区间翻转操作。 题解: splay裸题。注意涉及到区间操作的一般用splay不用treap。 代码: 20160418
阅读全文
摘要:bzoj2563阿狸和桃子的游戏 题意: 一个n(偶数)点图,节点权值为w(v),边权为c(e)。两人轮流将图中的顶点染色,已经被染过色的点不能再染了,而且每一轮都必须给一个且仅一个顶点染色。染完后每个人的分数为染过的点权和以及两个端点都被染的边权和。如果两人都是采用最优策略的,求最终第一个人的分数
阅读全文
摘要:bzoj3673可持久化并查集 by zky 题意: 维护可以恢复到第k次操作后的并查集。 题解: 用可持久化线段树维护并查集的fa数组和秩(在并查集里的深度),不能路径压缩所以用按秩启发式合并,可以使合并均摊复杂度为O(nlog2n)。可持久化线段树实际上就是在更新节点时按主席树的插入方式新建一条
阅读全文
摘要:bzoj3156防御准备 题意: n个检查点,在第i个检查点放置塔花费a[i],放置木偶花费为该位置右边最近一个塔离它的距离。求最小花费。n≤1000000 题解: 从右往左处理。在第i个点放塔的费用f[i]=min{f[j]+sigma(k,i+1,j-1)k-i}+a[i],用等差数列求和公式化
阅读全文
摘要:bzoj2588 Spoj 10628. Count on a tree 题意: n点树,m个询问求点u到点v路径上第k小的点权。强制在线。n,m≤100000 题解: 用主席树维护某节点到根节点的权值数量sz,建树过程可以由父亲节点递推。询问就用倍增求出lca,然后路径上的sz值就为sz[u]-s
阅读全文
摘要:bzoj1030[JSOI2007]文本生成器 题意: 给出一个字典和一个长度,要求有多少个这个长度的字符串里含有子串为字典里的单词。字符串和字典里的字符都为大写字母。单词数≤60,字符串及单词长度≤100。 题解: 在AC自动机上跑dp,求不含字典单词的个数,再用总个数减。f[i][j]表示当前处
阅读全文
摘要:bzoj1269[AHOI2006]文本编辑器editor 题意: 维护一个字符串,支持插入,删除,翻转操作。 题解: C++有个库里面有个容器叫rope,可以实现可持久化平衡树,然而本题只要它的插入、删除、截取字符串功能就行了,翻转怎么办?维护一个倒序的rope即可。 代码: 20160620
阅读全文
摘要:bzoj3172[Tjoi2013]单词 题意: 某人读论文,一篇论文是由许多单词组成。但他发现一个单词会在论文中出现很多次,现在想知道每个单词分别在论文中出现多少次。注意论文中单词之间是有分隔的。单词数≤200,长度≤1000000 题解: 先将每个单词插入trie,经过的节点的sum[i]++,
阅读全文
摘要:bzoj4631踩气球 题意: 有一个序列和一个区间集合,每次将序列中的一个数-1,求此时集合里有多少个区间和为0。序列大小≤100000,区间数≤100000,操作数≤100000。 题解: 此题解法其实并不难,对序列建线段树,用线段树每个节点维护区间和及覆盖该区间的集合内的区间的链表,同时记录每
阅读全文
摘要:bzoj1927[Sdoi2010]星际竞速 题意: 赛车大赛的赛场由N颗行星和M条双向星际航路构成,其中每颗行星都有一个不同的引力值。大赛要求车手们从一颗与这N颗行星之间没有任何航路的天体出发,访问这N颗行星每颗恰好一次。赛车超能电驴在高速航行模式下,沿星际航路航行,但只能由每个星球飞往引力比它大
阅读全文
摘要:bzoj1047[HAOI2007]理想的正方形 题意: 有一个a*b的整数组成的矩阵,求一个n*n的正方形区域,使得该区域所有数中的最大值和最小值的差最小。a,b≤1000,n≤100 题解: 做4次单调队列。先利用单调队列求出第i行第j列到第i行第j+n-1列的最大最小值,再利用这个求出第i行第
阅读全文
摘要:bzoj1878[SDOI2009]HH的项链 题意: N个数,M个询问求区间[L,R]中包含了多少种不同的数。 题解: 莫队好像可以做~但正解是树状数组。先将询问按左端点排序,并求出每个数的下一个与它相等的数的位置,同时将每个数第一次出现的位置在树状数组中置为1,此时query(x)求出来的就是1
阅读全文
摘要:bzoj1497[NOI2006]最大获利 题意: N个地方,在i处建立通讯中转站需要的成本为Pi。M个用户,第i个用户会使用中转站Ai和中转站Bi进行通讯,公司可以获益Ci。求净获利最大值。N≤5000,M≤50000 题解: 最小割。源点向所有地方连边,流量为建站成本,第Ai个地方和第Bi个地方
阅读全文
摘要:bzoj1034[ZJOI2008]泡泡堂BNB 题意: n场比赛,知道自己所有选手的能力值和对方所有选手的能力值,能力值大的一定赢。比赛赢一场得2分,平局得1分,输了不得分。对方随机决定选手顺序,你想知道自己最多能得多少分和最少能得多少分。N≤100000 题解: 贪心。设一个高分方和低分方,将两
阅读全文
摘要:bzoj1024[SCOI2009]生日快乐 题意: 一个矩形蛋糕边长分别为X和Y,须切成N块面积相等的蛋糕。每一切只能平行于一块蛋糕的任意一边,并且必须把这块蛋糕切成两块。因此必须切 N-1 次。求 N块蛋糕的长边与短边的比值的最大值的最小值。X,Y≤10000,N≤10 题解: 爆搜,dfs(x
阅读全文
摘要:bzoj2561最小生成树 题意: 给定一个连通无向图,假设现在加入一条边权为L的边(u,v),求需要删掉最少多少条边,才能够使得这条边既可能出现在最小生成树上,也可能出现在最大生成树上。 题解: 最小割。如果一个边出现在最小生成树上,那么权值比它小的边一定不能使图联通。因为要求删掉最少,所以当加入
阅读全文
摘要:bzoj2423[HAOI2010]最长公共子序列 题意: 求两个字符串的最长公共子序列长度和个数。字符串长度均≤5000。 题解: dp,设f[i][j]表示x串i位到末位,y串j位到末位的最长长度,g[i][j]表示x串i位到末位,y串j位到末位的最长长度的个数,方程: x[i]==y[j]:f
阅读全文
摘要:bzoj2705[SDOI2012]Longge的问题 题意: 给定一个整数N,求出∑gcd(i, N)(1<=i <=N)。 题解: 欧拉函数就是求比一个正整数且和它互质的正整数有几个,我不会,摘黄学长的题解: “ 题目中要求出∑gcd(i,N)(1<=i<=N)。 枚举n的约数k,令s(k)为满
阅读全文
摘要:bzoj3504[Cqoi2014]危桥 题意: 有N座岛屿,某些岛屿之间有桥相连,桥上的道路是双向的,但一次只能供一人通行。其中一些桥是危桥。Alice希望在岛屿al和a2之间往返an次(从al到a2再从a2 到al算一次往返)。同时,Bob希望在岛屿bl和b2之间往返bn次。这个过程中,所有危桥
阅读全文
摘要:bzoj2456mode 题意: 给你一个n个数的数列,求出现次数超过n div 2的数(只有1个)。 题解: 注意空间只有1M,显然不能开数组。用两个变量,一个存“当前数”,另一个存“当前数”的个数,如果读入的数与“当前数”相同就个数加一,如果不同就减一。如果个数减到0就换“当前数”为现在读入的数
阅读全文
摘要:bzoj3289Mato的文件管理 题意: 一共有n份资料,每天随机选一个区间[l,r],Mato按文件从小到大的顺序看编号在此区间内的这些资料。他先把要看的文件按编号顺序依次拷贝出来,再用排序程序给文件大小排序。求每天排序时的交换次数。 题解: 还是莫队,但是转移的时候用树状数组维护逆序对个数,总
阅读全文
摘要:bzoj1007[HNOI2008]水平可见直线 题意: 平面上有n条直线L1,L2,...Ln,若在y值为正无穷大处往下看,能见到Li的某个子线段,则称Li为可见的,否则Li为被覆盖的。给出n条直线,已知其斜率和截距,且n条直线两两不重合,求出所有可见的直线。 题解: 和上一道差不多,但是因为是比
阅读全文
摘要:bzoj3190[JLOI2013]赛车 题意: 赛场上一共有N辆车。赛道是一条无限长的直线。在这个比赛过程中,如果一辆赛车曾经处于领跑位置的话(即没有其他的赛车跑在他的前面),这辆赛车最后就可以得奖。已知所有赛车的起始位置(离起跑线距离)和速度,求出那些赛车将会得奖。 题解: 有人说是类似线性规划
阅读全文
摘要:bzoj2038[2009国家集训队]小Z的袜子(hose) 题意: 把N只袜子从1到N编号,每次求从编号为L到R的袜子中抽两只,有多大的概率抽到颜色相同的袜子。 题解: 不知道要用什么数据结构,但是可以用一个全局的数组保存每个颜色当前数量,使由区间[l,r]推出[l,r±1]的答案和[l±1,r]
阅读全文
摘要:bzoj2763[JLOI2011]飞行路线 题意: n个城市,这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市(双向),并且航线有一定的价格,途中可以进行转机。规定可以免费在最多k种航线上搭乘飞机。已知起点终点和k,求这次出行最少花费多少? 题解: 同上,但这次乱搞会TLE,本弱
阅读全文
摘要:bzoj2662[BeiJing wc2012]冻结 题意: 有 N 个城市,M 条双向的道路,有K次机会使通过某条道路时时间变慢 50%。注意在一条道路上最多只能使用一次机会,且不必使用完所有机会。 求从城市1 到城市N最少需要多长时间。(每条双向边等价于两条单向边) 题解: 分层图最短路。这道题
阅读全文
摘要:bzoj1306[CQOI2009]match循环赛 题意: n支队伍打单循环赛,赢的得3分,平局各得1分,输的不得分。已知n支队伍最终得分,求多少种可能的分数表。 题解: 爆搜,加入各种奇怪剪枝,比如:剩下的比赛全赢分数都不到要求就返回、当前分数超过了要求……还有一个重要的就是如果当前已经是最后一
阅读全文
摘要:bzoj1202[HNOI2005]狡猾的商人 题意: 账本上记录了n个月以来的收入情况,其中第i 个月的收入额为Ai 。所谓一段时间内的总收入,就是这段时间内每个月的收入额的总和。给出m段时间内的总收入,判断账本是否合法。 题解: 太神了,并查集还能这么用。每月作为一个节点,同时保存父节点表示的月
阅读全文
摘要:bzoj1143[CTSC2008]祭祀river 题意: Y族居住地水系是一个由岔口和河道组成的网络。每条河道连接着两个岔口,并且水在河道内按照一个固定的方向流动。水系中不会有环流。由于人数众多的原因,Y族的祭祀活动会在多个岔口上同时举行。Y族人认为,如果水流可以从一个祭祀点流到另外一个祭祀点,那
阅读全文
摘要:bzoj1303[CQOI2009]中位数图 题意: 给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b。 题解: 首先将数组中所有小于b的数置为-1,等于的置为0,大于的置为1。然后对b及其右边的数的前缀和(b的位置到该位置所有数的和)出现个数建一个数组r,对b左边的数的每
阅读全文
摘要:bzoj1257[CQOI2007]余数之和sum 题意: 给出正整数n和k,计算j(n, k)=k mod 1 + k mod 2 + k mod 3 + … + k mod n的值。 题解: 思路很巧妙。先划分一下,第一步对≤√k的n暴力求。因为a%b也等于a-a div b(用pascal的术
阅读全文
摘要:bzoj1087[SCOI2005]互不侵犯King 题意: 在N×N的棋盘里面放K个国王,使他们互不攻击,求共有多少种摆放方案。国王能攻击到它上下左右及左上左下右上右下八个方向上附近的一个格子,共8个格子。 题解: 状压dp。我的做法是像插头dp那样保存当前列右侧的上一行和当前列左侧的当前行的情况
阅读全文
摘要:bzoj3196Tyvj1730二逼平衡树 题意: 维护一个数列,操作:查询k在区间内的排名、查询区间内排名为k的值3、修改某一位上的数值、查询k在区间内的前驱(前驱定义为小于x,且最大的数)、查询k在区间内的后继(后继定义为大于x,且最小的数) 题解: 线段树套treap,我写了一个星期QAQ第一
阅读全文
摘要:bzoj1296[SCOI2009]粉刷匠 题意: 粉刷N条木板,每条木板M 个格子,每个格子要被刷成红色或蓝色。每次只能选择一条木板上一段连续的格子涂上一种颜色。 每个格子最多只能被粉刷一次。 如果只能粉刷 T 次,求最多能正确粉刷的格子数。未被粉刷或者颜色错的格子算错误粉刷。 题解: 非常容易想
阅读全文
摘要:bzoj2243[SDOI2011]染色 题意: n点无根树,2类操作:将节点a到节点b路径上所有点都染成颜色c、询问节点a到节点b路径上的颜色段数量。 题解: 有点恶心的链剖,可以用包含区间颜色段数,左端点颜色,右端点颜色的结构体存储查询的结果。首先是线段树节点除了要保存区间颜色段数还要保存左右端
阅读全文
摘要:bzoj4034[HAOI2015]T2 题意: N点树,以点 1 为根,且树点有边权。三种操作:把某个节点点权增加 a 、某个节点为根的子树中所有点的点权都增加 a 、询问某个节点到根的路径中所有点的点权和。 题解: 本题链剖可过。第二个操作只要每次在构造链的时候找到子树中在链中位置最大的节点,然
阅读全文
摘要:bzoj2661[BeiJing wc2012]连连看 题意: 给出一个闭区间[a,b]中的全部整数,如果其中某两个数x,y(设x>y)的平方差x2-y2是一个完全平方数z2,并且y与z互质,那么就可以将x和y一起消除,同时得到x+y点分数。求消除的数对尽可能多的前提下分数的最大值。 题解: 每个数
阅读全文
摘要: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
阅读全文
摘要:bzoj1452[JSOI2009]Count 题意: n*m矩阵,支持两个操作,修改某个格子权值和查询某个子矩阵特定权值出现次数。n,m≤300,权值为1到100的整数。 题解: 原来二维前缀和也可以用树状数组维护,只要那个不断增加/减少lowbit的循环再嵌套一层就行了。同时因为权值是1到100
阅读全文
摘要:bzoj1934[Shoi2007]Vote 善意的投票 题意: n个小朋友通过投票来决定睡不睡午觉。每个人都有自己的主见,但也可以投和自己本来意愿相反的票。冲突总数为好朋友之间发生冲突的总数加上和自己本来意愿发生冲突的人数。求最小冲突数。 题解: 最小割,s向每个选1的人连边流量为1,每个选0的人
阅读全文
摘要:bzoj1787[Ahoi2008]Meet 紧急集合 bzoj1832[AHOI2008]聚会 题意: 给个树,每次给三个点,求与这三个点距离最小的点。 题解: 倍增求出两两之间的LCA后,比较容易理解的做法是挑出两个LCA再做一次LCA,比较所有挑法。但画kan出ti图jie可知其中有两个LCA
阅读全文
摘要:bzoj1293[SCOI2009]生日礼物 题意: 数轴上N个点,分为K种。可以有多个点出现在同一个位置上。需要一个最短区间使里面有K种点,求这个区间长度。N≤1000000 题解: 先排序,然后用两个指针分别指向区间两个端点,每次l指针往左移并更新答案直到区间里没有K种点,再把r指针向右移直到区
阅读全文
摘要:bzoj1221[HNOI2001]软件开发 题意: n天,每天需要ai条消毒毛巾,这种消毒毛巾使用一天后必须再做消毒处理后才能使用。消毒方式有两种,A种方式的消毒需要a天时间,一条费用fA,B种方式的消毒需要b天,一条费用fB,买一块新毛巾的费用为f(新毛巾是已消毒的,当天可以使用),求最小费用。
阅读全文
摘要:bzoj1295[SCOI2009]最长距离 题意: N*M块地,如果两块地都没有障碍物,则互相可达。如果两块地互相可达(可经过其他地)则它们之间的距离为它们中心点的欧几里得距离,求如果能移走不大于T个障碍物,土地间的最大距离。N,M≤30 题解: 把经过一个障碍物视为边长度为1,求出每两个点之间要
阅读全文
摘要:bzoj1218[HNOI2003]激光炸弹 题意: 坐标系上有n个目标,每个目标有一个价值,现在求一个边与坐标轴平行,边长为R的正方形,使在其内部(原题是不包括边界,然而实际上不是这样)的目标价值最大。 题解: 预处理一下以横纵坐标为节点的二维前缀和,然后枚举正方形右上角坐标即可。注意可以将坐标系
阅读全文
摘要:bzoj1196[HNOI2006]公路修建问题 题意: 修n-1条公路将n个点连通,每个点可建一级公路也可建二级公路,要求一级公路必须有k条,要求花费最多的公路花费最少。 题解: 首先二分最大花费,接着判定:先在不产生环的前提下(用并查集维护)让每条路尽量修一级公路,如果最后无法构成树则考虑修二级
阅读全文
摘要:bzoj1588[HNOI2002]营业额统计 题意: n天,每天得到一个值,要求输出每一天和这天得到的值相差最小的之前天得到的值与这个值的差的和。n不知道,不过O(nlog2n)可写。 题解: 说是平衡树模板题,不过可以用set水过去。先在set插入一个-INF和INF防溢出(yyl大爷教我的)每
阅读全文
摘要:bzoj2039[2009国家集训队]employ人员雇佣 题意: 有N个经理,Ei,j表示i经理对j经理的了解程度,当经理i和经理j同时被雇佣时,利润增加Ei,j*2。同时,雇佣每一个经理都需要花费一定的金钱Ai。没有被雇佣的人会被竞争对手所雇佣,使得所赚得的利润减少Ei,j(意思是经理i和j如果
阅读全文
摘要:bzoj3874[Ahoi2014]宅男计划 题意: n种食物,每种有价钱和保质期。每次叫外卖要F元,可以购买任意多份食物。共有m元,问一共能过多少天使得每天都能吃到一份不过期的食物。n≤200,其他都≤1018 题解: 先排序+单调队列去掉那些价钱贵保质期反而短的外卖,剩下的队列按保质期从短到长排
阅读全文
摘要:bzoj2282[Sdoi2011]消防 题意: 在树上找一条路径,使得端点到这条路径的距离最大值最小。 题解: 一个坑,就是这个路径可以不包含任意一条边,只包含一个节点。因此可以证明这条路径在树的直径上,把树的直径上的所有边存入一个序列,对直径上每个点求其它不在路径上的点与它的最大距离mxd,然后
阅读全文
摘要:bzoj1798[Ahoi2009]Seq 维护序列seq 题意: 维护序列,支持区间加、区间乘、区间求和模一个数。序列大小和操作数≤100000 题解: 线段树,加标记和乘标记的处理同bzoj4003。模的时候注意细节。 代码: 20160714
阅读全文
摘要:bzoj4003[JLOI2015]城池攻占 题意: 有n个城池组成根节点为1的树,m个人,当一个人的战斗力大于等于攻打城市的防御力,就能攻占这个城市,来到这个城市的父节点,否则该人会牺牲在这个城市。当一个城市被攻占时,会使攻占的人的战斗力加或乘上某个数。现在给出m个人的最开始攻打的城市和初始战斗力
阅读全文
摘要:bzoj2809[Apio2012]dispatching 题意: n个点组成一棵树,每个点都有一个领导力和费用,可以让一个点当领导,然后在这个点的子树中选择一些费用之和不超过m的点,得到领导的领导力乘选择的点的个数(领导可不被选择)的利润。求利润最大值。n≤100000 题解: 可并堆。可以得到一
阅读全文
摘要:bzoj2333[SCOI2011]棘手的操作 题意: 有N个节点,M个操作:连接两个节点、单个节点的权值增加v、节点所在的连通块的所有节点的权值增加v、所有节点的权值增加v、询问节点当前的权值、询问节点所在的连通块中权值最大的节点的权值、询问所有节点中权值最大的节点的权值。N,M≤300000 题
阅读全文
摘要:bzoj4002[JLOI2015]有意义的字符串 题意: 求((b+√d)/2)^n的整数部分。b*b<d<10^18,n<10^18,d%4==1,b*b%4==1,模数约等于7*10^18 题解: 神题。由一些性质可以得出一个数列:An=bAn-1+(d-b*b)/4*An-2,且这个数列的通
阅读全文
摘要:bzoj2006[NOI2010]超级钢琴 题意: 超级钢琴可以弹奏出n个音符,编号为1至n。第i个音符的美妙度为Ai,其中Ai可正可负。一个“超级和弦”由若干个编号连续的音符组成,包含的音符个数不少于L且不多于R,其美妙度为包含的所有音符的美妙度之和。两个超级和弦被认为是相同的,当且仅当这两个超级
阅读全文
摘要:bzoj1088[SCOI2005]扫雷 题意: 有一个n×2的棋盘,第一列里面某些格子是雷,而第二列没有雷。由于第一列的雷可能有多种方案满足第二列的信息的限制,求根据第二列的信息第一列雷有多少种摆放方案。 题解: 水题,因为每个第一行的格子可以根据前一个第二行的格子里的信息唯一确定是否有雷,所以只
阅读全文
摘要:bzoj1207[HNOI2004]打鼹鼠 题意: 在一个n*n的网格 中,如果i时刻鼹鼠在某个网格中出现,而机器人也处于同一网格的话,那么这 个鼹鼠就会被机器人打死。而机器人每一时刻只能够移动一格或停留在原地不动。机器人的移动是指从当前所处的网格移向相邻的网格,且不能走出整个n*n的网格。游戏开始
阅读全文
摘要:bzoj2132圈地计划 题意: 一块土地可以纵横划分为N×M块小区域。于第i行第j列的区域,建造商业区将得到Aij收益,建造工业区将得到Bij收益。而如果区域(i,j)相邻(相邻是指两个格子有公共边)有K块(显然K不超过4)类型不同于(i,j)的区域,则这块区域能增加k×Cij收益。已知收益矩阵A
阅读全文
摘要:bzoj2127happiness 题意: 高一一班的座位表是个n*m的矩阵。这学期要分文理科了,每个同学对于选择文科与理科有着自己的喜悦值,而相邻两个同学如果能同时选文科或者理科,那么他们又将收获一些喜悦值。求全班的喜悦值总和的最大值。 题解: 题解太难写,转黄学长的吧(我太弱) “ 利用最小割考
阅读全文
摘要:bzoj1037[ZJOI2008]生日聚会 题意: 一排小孩坐着玩游戏。就座的方案满足如下条件:对于任意连续的一段,男孩与女孩的数目之差不超过k。给出男孩数,女孩数和k,求就座方案数除以12345678的余数。 题解: dp方程见程序,i1i2表示当前选了几男几女,i3i4分别表示当前男比女多几个
阅读全文
摘要:bzoj1031[JSOI2007]字符加密 题意: 一种加密办法是把需要加密的信息排成一圈,显然,它们有很多种不同的读法。把它们按照字符串的大小排序,读出最后一列字符,就是加密后的字符串。给出原字符串,求加密后的字符串。 题解: 将原字符串重复后接在后面,然后求后缀数组,注意求完后要取那些长度大于
阅读全文
摘要:bzoj1566[noi2009]管道取珠 题意: 有个装置,左侧有上下两条管道分别有n个和m个不同颜色的两种球,右侧一条空管道。每次可以选左侧的一条管道将最右侧的球推到右侧管道,经过n+m次操作,右侧管道从右到左形成一个输出序列。求不同种类的输出序列的产生方式数的平方之和。n,m≤500 题解:
阅读全文
摘要:bzoj2134单选错位 题意: 试卷上n道选择题,每道分别有ai个选项。某人全做对了,但第i道题的答案写在了第i+1道题的位置,第n道题答案写在第1题的位置。求期望能对几道。n≤10000000 题解: 水题,然而我不会。第i题与第i+1题答案一样的概率是1/max(aiai+1) 代码: 1 #
阅读全文
摘要:bzoj1911 [Apio2010]特别行动队 题意: n个人,拆成若干个队。设x等于队里每个人战斗力之和,则这个队战斗力为ax2+bx+c(a,b,c已知)。求所有队战斗力总和最大多少。 题解: 方程:f[i]=max{f[j]+(sum[i]-sum[j])2*a+(sum[i]-sum[j]
阅读全文
摘要:bzoj1483[HNOI2009]梦幻布丁 题意: N个布丁摆成一行,进行M次操作.每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色。 题解: 给每个颜色建一个链表。先预处理出答案,然后每次修改颜色时将两个链表合并,同时将修改后颜色对答案的贡献重新计算(如果两个节点的位置相
阅读全文