[BZOJ]1078: [SCOI2008]斜堆
摘要:[BZOJ]1078: [SCOI2008]斜堆
阅读全文
posted @
2017-04-04 21:11
ditoly
阅读(313)
推荐(0)
[BZOJ]1079: [SCOI2008]着色方案
摘要:[BZOJ]1079: [SCOI2008]着色方案
阅读全文
posted @
2017-04-04 16:12
ditoly
阅读(286)
推荐(0)
[BZOJ]2301: [HAOI2011]Problem b
摘要:题目大意:对于给出的n个询问,每次求有多少个数对(x,y),满足a≤x≤b,c≤y≤d,且gcd(x,y) = k,gcd(x,y)函数为x和y的最大公约数。(1≤n≤50000,1≤a≤b≤50000,1≤c≤d≤50000,1≤k≤50000) 思路: 我们只要能求出1<=x<=n,1<=y<=
阅读全文
posted @
2017-04-01 14:58
ditoly
阅读(148)
推荐(0)
k-d tree模板练习
摘要:[BZOJ]1941: [Sdoi2010]Hide and Seek | [BZOJ]2648: SJY摆棋子 | [BZOJ]4066: 简单题
阅读全文
posted @
2017-03-31 17:26
ditoly
阅读(305)
推荐(0)
[BZOJ]1040: [ZJOI2008]骑士
摘要:题目大意:n个骑士,每人有一个权值和一个讨厌的人,要求选出若干个骑士,每个人都不能和他讨厌的人被一起选,求选出的最大权值。(n<=10^6) 思路:每人向他讨厌的人连边,得到若干棵基环外向树,每棵找到环上一点枚举选不选把环拆开树形DP即可,复杂度O(n)。
阅读全文
posted @
2017-03-31 13:42
ditoly
阅读(164)
推荐(0)
[BZOJ]1177: [Apio2009]Oil
摘要:题目大意:给出一个n*m的矩阵,选出3个不相交的k*k子矩阵,使得子矩阵中元素和最大。(k<=n,m<=1500) 思路:选出的子矩阵有3种情况:横着排三个、竖着排三个、三角状分布(其中有四种朝向),分情况判一判就好了。
阅读全文
posted @
2017-03-31 09:15
ditoly
阅读(180)
推荐(0)
[BZOJ]1854: [Scoi2010]游戏
摘要:题目大意:n个装备,每个装备有两个属性值可以二选一,问能选出的最长的从1开始的连续正整数序列。(属性值<=10000,n<=10^6) 思路:匈牙利二分图匹配模板复习,复杂度O(10000^2)。
阅读全文
posted @
2017-03-30 21:59
ditoly
阅读(137)
推荐(0)
[BZOJ]3531: [Sdoi2014]旅行
摘要:题目大意:给定一棵树,每个点有颜色和权值,支持修改一个点的颜色和权值,查询一条链上某种颜色的和与最大值。(n<=10^5) 思路:树剖一下,每种颜色开一棵线段树,动态开点,时间复杂度O(nlogn^2),空间复杂度O(nlogn)。
阅读全文
posted @
2017-03-30 21:25
ditoly
阅读(203)
推荐(0)
[BZOJ]1064: [Noi2008]假面舞会
摘要:题目大意:n个人,k种假面,每人戴一种,戴第i种的可以看见第i+1种,戴第k种的可以看见第1种,给出m条关系表示一个人可以看到另一个人,问k可能的最大值和最小值。(n<=100,000,m<=1,000,000) 思路:染色,若点i颜色为ci,就把点i能到的点染成ci+1,能到点i的点染成ci-1,
阅读全文
posted @
2017-03-28 12:56
ditoly
阅读(118)
推荐(0)
[BZOJ]1758: [Wc2010]重建计划
摘要:题目大意:给定一棵n个点的带边权的树和l,u,求长度在[l,u]之间平均权值最大的链的权值。(n<=100,000) 思路:二分答案,把树上每条边减去二分出的答案,点分治check是否有长度在[l,u]之间权值和大等0的链,每次把每棵子树按深度排序,记下各个深度到根距离最大的节点,再用单调队列统计即
阅读全文
posted @
2017-03-27 19:37
ditoly
阅读(208)
推荐(0)
[BZOJ]4644: 经典傻逼题
摘要:某天我觉得一切题目都是那么不可做,于是百度了一下“傻逼题”…… 题目大意:对于图中的任意一个点集(可以为空或者全集),所有恰好有一个端点在这个点集中的边组成的集合被称为割。一个割的权值被定义为所有在这个割上的边的异或和。现在有一张一开始只有n个点的图,m次操作,每次加入一条边并询问当前最大的割的权值
阅读全文
posted @
2017-03-24 20:02
ditoly
阅读(684)
推荐(0)
[BZOJ]3674: 可持久化并查集加强版
摘要:题目大意:n个点,三种操作:1.将点a点b连在一起;2.将当前状态退回到第k次操作时的状态;3.询问点a和点b是否连通。(n,操作数量<=200,000) 思路:可持久化并查集其实就是可持久化数组,我们用线段树代替数组,就只要打个可持久化线段树就可以了。路径压缩复杂度是均摊的不能可持久化,我们按秩合
阅读全文
posted @
2017-03-22 18:15
ditoly
阅读(179)
推荐(0)
[BZOJ]3065: 带插入区间K小值
摘要:题目大意:一个长度为n的序列,支持三种操作:1.查询区间k小值;2.修改一个元素;3.插入一个元素;强制在线。(n<=35000,插入操作数<=35000,修改操作数<=70000,查询操作数<=70000,0<=数字大小<=70000,4个点,总时限60s) 思路:做法比较多,我写的是权值线段树套
阅读全文
posted @
2017-03-22 15:29
ditoly
阅读(261)
推荐(0)
[BZOJ]1297: [SCOI2009]迷路
摘要:题目大意:给定一个有n个点的图的邻接矩阵,边权范围1~9,问从点0走到点n-1恰好走了长为T的路径的方案数。(n<=10,T<=10^9) 思路:由于边权较小,我们把每个点拆成9个点,分别为该点,离该点距离还差1,还差2……还差8,这样我们就可以把原图重构成一个边权均为1的图。用f[i][j]表示走
阅读全文
posted @
2017-03-21 23:34
ditoly
阅读(166)
推荐(0)
[BZOJ]1143: [CTSC2008]祭祀river
摘要:题目大意:给定一个n个点m条边的有向无环图,问最多选多少个点使得两两之间互不到达。(n<=100,m<=1000) 思路:题目所求即最长反链,最长反链=最小链覆盖,对每个点向自己能到的所有点连边后,转化成最小路径覆盖,每个点拆成入点和出点后二分图匹配,又有最大二分图匹配=最小路径覆盖,问题得到解决。
阅读全文
posted @
2017-03-21 14:08
ditoly
阅读(181)
推荐(0)
[网络流24题]最长递增子序列问题
摘要:题目大意:给定长度为n的序列a,求:1.最长递增子序列长度;2.最多选出几个不相交的最长递增子序列;3.最多选出几种在除了第1个和第n个以外的地方不相交的最长递增子序列。(n<=1000) 思路:先倒着DP,求出f[i]表示以a[i]开头的最长的递增子序列长度,然后建图,若f[i]=最长递增子序列长
阅读全文
posted @
2017-03-20 23:04
ditoly
阅读(175)
推荐(0)
费用流模板练习
摘要:[USACO 2003 February]Farm Tour | 餐巾计划问题/[BZOJ]1221 软件开发
阅读全文
posted @
2017-03-19 17:29
ditoly
阅读(192)
推荐(0)