03 2015 档案

摘要:题目连接:BZOJ - 3218题目分析题目要求将 n 个点染成黑色或白色,那么我们可以转化为一个最小割模型。我们规定一个点 i 最后属于 S 集表示染成黑色,属于 T 集表示染成白色,那么对于每个点 i 就要连边 (S, i, B[i]) 和 (i, T, W[i])。这样,如果一个点属于 S 集... 阅读全文
posted @ 2015-03-31 10:43 JoeFan 阅读(369) 评论(0) 推荐(0)
摘要:UOJ卖萌表情,萌萌哒VFK如图。 阅读全文
posted @ 2015-03-26 14:37 JoeFan 阅读(207) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1218题目分析可以覆盖一个边长为 R 的正方形,但是不能包括边界,所以等价于一个边长为 R - 1 的正方形。坐标范围 #include #include #include #include #include using namespace std;inline int g... 阅读全文
posted @ 2015-03-24 23:12 JoeFan 阅读(613) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1115题目分析首先看一下阶梯博弈:阶梯博弈是指:初始有 n 堆石子,每次可以从任意的第 i 堆拿若干石子放到第 i - 1 堆。最终不能操作的人失败。解法:将奇数位的石子堆做最基本的 NIM 就可以了。WHY:对奇数位做 NIM 的必胜者总是可以胜利,因为如果从奇数位拿石子... 阅读全文
posted @ 2015-03-19 15:33 JoeFan 阅读(398) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1336题目分析最小圆覆盖有一个算法叫做随机增量法,看起来复杂度像是 O(n^3) ,但是可以证明其实平均是 O(n) 的,至于为什么我不知道= =为什么是随机呢?因为算法进行前要将所有的点 random_shuffle 一次。为什么要这样做呢?因为这样就可以防止出题人用最坏... 阅读全文
posted @ 2015-03-19 14:49 JoeFan 阅读(395) 评论(0) 推荐(0)
摘要:题目链接:CF - R296 - d2 - D题目大意一个特殊的图,一些数轴上的点,每个点有一个坐标 X,有一个权值 W,两点 (i, j) 之间有边当且仅当 |Xi - Xj| >= Wi + Wj。求这个图的最大团。图的点数 n = Wi + Wj (Xi Xj - Wj >= Xi + ... 阅读全文
posted @ 2015-03-18 16:00 JoeFan 阅读(249) 评论(0) 推荐(0)
摘要:题目链接:UOJ - 25题目分析每个操作就是将被操作的数限制在一个区间,比如 Set_Max(5) 就是将被操作的数限定在了 [5, INF] 的区间里。这些操作是可加的,但是必须按照顺序,不满足交换律。对每个节点维护两个标记 Min_Tag[x], Max_Tag[x] ,表示这个节点的数被限制... 阅读全文
posted @ 2015-03-17 09:57 JoeFan 阅读(566) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 2428题目分析这道题使用随机化算法来做,可以使用模拟退火,也可以random_shuffle之后贪心。模拟退火:要进行多次模拟退火,每次进行模拟退火之前,给每个点随机分配一下集合。然后模拟退火的随机移动就是随机一个点,再找另一个集合y,将这个点移动到集合y中。开始时模拟退火... 阅读全文
posted @ 2015-03-16 20:14 JoeFan 阅读(233) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 3680题目分析这道题是SLYZ的神犇把JSOI的平衡点那道题改了一下题面变成了吊打GTY神犇..Orz第一次写模拟退火,只能照着别人的代码写,我看的是PoPoQQQ神犇的代码,于是我基本上完全照着写的,代码没什么区别= =首先是模型的转化,一看这道题目是神奇的物理题,我完全... 阅读全文
posted @ 2015-03-16 09:25 JoeFan 阅读(1628) 评论(1) 推荐(0)
摘要:Author : EvensgnBlog Link :http://www.cnblogs.com/JoeFan/Article Link :http://www.cnblogs.com/JoeFan/p/4338003.html游戏介绍Lights Out (关灯)是一款据说在20世纪90年代就已... 阅读全文
posted @ 2015-03-14 18:29 JoeFan 阅读(4293) 评论(0) 推荐(1)
摘要:题目链接:BZOJ - 1500题目分析我要先说一下,这道题我写了一晚上,然后Debug了一整个白天..........再一次被自己的蒟蒻程度震惊= =这道题是传说中的Splay维护数列的Boss题目。前面的几个操作和询问看起来比较正常,就是最后一个维护最大区间和比较复杂。其实这个也并不是十分复杂,... 阅读全文
posted @ 2015-03-13 21:17 JoeFan 阅读(271) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1559题目分析将给定的串建成AC自动机,然后在AC自动机上状压DP。转移边就是Father -> Son 或 Now -> Fail。f[i][j][k] ,表示到了字符串第 i 位,在AC自动机的第 j 个节点上,状态为 k 的方案数。状态 k 是一个二进制压缩的,表示已... 阅读全文
posted @ 2015-03-12 14:42 JoeFan 阅读(540) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1112题目分析枚举每一个长度为k的连续区间,求出这个区间的最优答案,更新全局答案。可以发现,这个区间的所有柱子最终都变成这k个数的中位数时最优,那么我们就需要查询这个区间的中位数了。找到中位数之后,我们还应该求出这个区间内小于中位数的数的和,大于中位数的数的和,从而求出操作... 阅读全文
posted @ 2015-03-09 21:32 JoeFan 阅读(475) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1106题目分析从1到2n枚举每一个位置。如果枚举到某一个数,这个数已经是第二次出现,那么就看它和第一次出现的位置之间有多少数还没有被匹配,有多少没有匹配的就要进行多少次交换。代码#include #include #include #include #include #in... 阅读全文
posted @ 2015-03-09 20:29 JoeFan 阅读(342) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1143题目分析这道题在BZOJ上只要求输出可选的最多的祭祀地点个数,是一道求最长反链长度的裸题。下面给出一些相关知识:在有向无环图中,有如下的一些定义和性质:链:一条链是一些点的集合,链上任意两个点x, y,满足要么 x 能到达 y ,要么 y 能到达 x 。反链:一条反链... 阅读全文
posted @ 2015-03-09 19:52 JoeFan 阅读(1972) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1098题目分析只有两个点之间有边的时候它们才能在不同的楼内,那么就是说如果两个点之间没有边它们就一定在同一座楼内。那么要求的就是求原图的补图的连通块。然而原图的补图的边数是 n^2 级别的,非常庞大,我们不能直接把补图求出来。可以使用一种用链表优化BFS的做法,开始时将所有... 阅读全文
posted @ 2015-03-09 09:07 JoeFan 阅读(500) 评论(0) 推荐(0)
摘要:题目链接:UOJ - 74题目分析题目中,将字符串 S 的第一个字符移到末尾,其他字符向前移动一个位置,f(S) 就从 Hi 变成了 Hi+1。我们分析一下这个过程:假设第一个字符为 c, (Hi - 26^(n-1) * c) * 26 + c = Hi+126 * Hi - Hi+1 = (26... 阅读全文
posted @ 2015-03-09 07:47 JoeFan 阅读(409) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2015-03-08 16:58 JoeFan 阅读(2) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2015-03-08 16:29 JoeFan 阅读(1) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1034题目分析这道题和田忌赛马的典故很相似。先要将两队的队员都按照水平从小到大分别排序。然后每次尝试用我方最弱的队员赢对方最弱的队员,或者用我方最强的队员赢对方最强的队员。如果都不行,就用我方最弱的队员对抗对方最强的队员。这样求出的就是我方的最高分。由于进行 n 轮比赛之后... 阅读全文
posted @ 2015-03-08 14:53 JoeFan 阅读(282) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1028题目分析枚举听的是哪种牌,再枚举成对的是哪种牌,再贪心判断:从1到n枚举每一种牌,如果这种牌的个数小于0,就返回不合法。将这种牌的张数 % 3, 剩下的只能和 i + 1, i + 2 这两种牌构成顺,所以 Num[i + 1] -= Num[i]; Num[i + ... 阅读全文
posted @ 2015-03-08 11:06 JoeFan 阅读(303) 评论(0) 推荐(0)
摘要:题目链接:HDOJ - 5183题目分析分两种情况,奇数位正偶数位负或者相反。从1到n枚举,在Hash表中查询 Sum[i] - k ,然后将 Sum[i] 加入 Hash 表中。BestCoder比赛的时候我写了 STL map, 然后TLE...注意: Hash负数的时候 % 了一个质数,得到的... 阅读全文
posted @ 2015-03-08 10:00 JoeFan 阅读(331) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1058题目分析这道题看似是需要在序列中插入一些数字,但其实询问的内容只与相邻的元素有关。那么我们只要对每个位置维护两个数 Ai, Bi, Ai 就是初始序列中 i 这个位置的数, Bi 是在 i 这个位置insert的最后一个数。那么在 i insert一个数 Num 的时... 阅读全文
posted @ 2015-03-08 09:24 JoeFan 阅读(505) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1040题目分析这道题目的模型就是一个图,不一定联通,每个连通块的点数等于边数。每个连通块都是一个基环+外向树。即树上增加了一条边。如果是树,就可以直接树形DP了。然而这是基环+外向树,需要先找到环上的一条边,记录这条边的两个端点 R1, R2,删掉这条边。然后分两种情况:一... 阅读全文
posted @ 2015-03-08 08:35 JoeFan 阅读(402) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1025题目分析显然的是,题目所要求的是所有置换的每个循环节长度最小公倍数的可能的种类数。一个置换,可以看成是一个有向图,每个点的出度和入度都是1,这样整个图就是由若干个环构成,这些环的长度和为 n 。因此,就是要求出和为 n 的正整数的最小公倍数的可能情况。有一个性质:这些... 阅读全文
posted @ 2015-03-07 11:23 JoeFan 阅读(264) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1047题目分析使用单调队列在 O(n^2) 的时间内求出每个 n * n 正方形的最大值,最小值。然后就可以直接统计答案了。横向有 a 个单调队列(代码中是 Q[1] 到 Q[a] ),维护每行当前枚举区间的单调队列。纵向一个单调队列(代码中是 Q[0] ),求出当前枚举区... 阅读全文
posted @ 2015-03-07 09:18 JoeFan 阅读(258) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1082题目分析二分 + DFS验证。二分到一个 mid ,验证能否选 mid 个根木棍,显然要选最小的 mid 根。使用 DFS 验证,因为贪心地想一下,要尽量先用提供的小的木木棍,尽量先做出需要的大的木棍,所以要先将提供的木棍和需要的木棍都排序。DFS 的时候是按照需要的... 阅读全文
posted @ 2015-03-07 07:55 JoeFan 阅读(518) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1016题目分析最小生成树的两个性质:同一个图的最小生成树,满足:1)同一种权值的边的个数相等2)用Kruscal按照从小到大,处理完某一种权值的所有边后,图的连通性相等这样,先做一次Kruscal求出每种权值的边的条数,再按照权值从小到大,对每种边进行 DFS, 求出这种权... 阅读全文
posted @ 2015-03-06 21:26 JoeFan 阅读(335) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1029题目分析使用一种贪心策略。现将任务按照deadline从小到大排序。然后枚举每一个任务,如果当前消耗的时间加上完成这个任务的时间不会超过这个任务的deadline,那么就完成这个任务。否则,如果完成这个任务的时间比之前选择完成的任务中完成时间最长的一个要短,那么就弹出... 阅读全文
posted @ 2015-03-06 19:09 JoeFan 阅读(298) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 3196题目分析区间Kth和区间Rank用树状数组套线段树实现,区间前驱后继用线段树套set实现。为了节省空间,需要离线,先离散化,这样需要的数组大小可以小一些,可以卡过128MB = =嗯就是这样,代码长度= =我写了260行......Debug了n小时= =代码#inc... 阅读全文
posted @ 2015-03-06 18:07 JoeFan 阅读(415) 评论(0) 推荐(0)
摘要:题目链接:BZOJ - 1901题目分析树状数组套线段树或线段树套线段树都可以解决这道题。第一层是区间,第二层是权值。空间复杂度和时间复杂度均为 O(n log^2 n)。线段树比树状数组麻烦好多...我容易写错= =代码树状数组套线段树#include #include #include #inc... 阅读全文
posted @ 2015-03-06 09:41 JoeFan 阅读(314) 评论(0) 推荐(0)
摘要:题目链接:C. DNA Alignment题目大意就不写了,因为叙述会比较麻烦..还是直接看英文题面吧。题目分析经过观察与思考,可以发现,构造的串 T 的每一个字符都与给定串 S 的每一个字符匹配了 L 次,那么令 S 中 A,C,G,T 的数量分别为 A1, B1, C1, D1, T 中A,C,... 阅读全文
posted @ 2015-03-03 15:48 JoeFan 阅读(238) 评论(0) 推荐(0)
摘要:题目链接:E. A and B and Lecture Rooms题目大意给定一颗节点数10^5的树,有10^5个询问,每次询问树上到xi, yi这两个点距离相等的点有多少个。题目分析若 x==y 直接返回 n。先求出 x, y 两个点的中点。先求出 LCA(x, y) = z,假设 Depth[x... 阅读全文
posted @ 2015-03-03 15:38 JoeFan 阅读(285) 评论(0) 推荐(0)
摘要:题目链接:D. A and B and Interesting Substrings题目大意给定26个小写字母的权值,一共26个整数(有正有负)。给定一个小写字母组成的字符串(长度10^5),求有多少长度大于1的子串满足:1)首尾字符相同。2)除了首尾字符外,其他字符的权值和为0。题目分析使用STL... 阅读全文
posted @ 2015-03-01 14:07 JoeFan 阅读(202) 评论(0) 推荐(0)