- 博客(28)
- 收藏
- 关注
原创 [bzoj3744]Gty的妹子序列【分块】【主席树】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=3744 【题解】 分块套路题。 首先可以用可持久化线段树在O(logN)O(logN)O(log N)的时间内求出,一个点在一段区间内的逆序对数。 其次可以在O(T)O(T)O(T)的时间内求出两个大小为TTT的有序区间的相互的逆序对数(Two pointers...
2018-03-16 20:56:47 303
原创 [bzoj3720]Gty的妹子树【树分块】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=3720 【题解】 按dfs序树分块的模板题。 每个节点的子树在dfs序中一定为一串连续的区间,那我们对dfs序分块就行了,每个块内元素按大小排序。查询时暴力找边界上的块,中间的块二分一下。修改时暴力维护大小顺序,插入时插在它的父亲后(dfs序为它的父亲+1),然后暴力...
2018-03-16 20:47:24 207
原创 [bzoj3438]小M的作物【最小割】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=3438 【题解】 一个不算太复杂的最小割模型。 首先SSS往每个点连边,流量为a[i]a[i]a[i],每个点往TTT连边,容量为b[i]b[i]b[i]。 对于每个组合,新建两个点u,vu,vu,v,SSS向uuu连边,流量为c1c1c1,uuu向每个涉及到的...
2018-03-16 20:33:39 241
原创 [bzoj4518][Sdoi2016]征途【dp】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=4518 【题解】 斜率优化dp。 首先不难想到一个O(n3)O(n3)O(n^3)的暴力,由于平均值是固定的,记f[i][j]f[i][j]f[i][j]表示到了第iii站,停了jjj次的方差最小值,f[i][j]=min(f[k][j−1]+(s[i]−s[k−1]...
2018-03-16 20:24:46 273
原创 [bzoj4260]Codechef REBXOR【trie树】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=4260 【题解】 一段的异或和可以转换为两个前缀的异或。 因此可以用trie树预处理出任意一个节点向左或向右的最大异或。 然后求出前缀/后缀最大值,枚举断点即可。/* -------------- user Vanisher p...
2018-03-16 19:09:19 219
原创 [bzoj3307]雨天的尾巴【线段树】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=3307 【题解】 首先这道题所有的修改可以一次处理完。 若有一条边(u,v)(u,v)(u,v)在u,vu,vu,v上各打一个+1+1+1的标记,在lca(u,v),dad(lca(u,v))lca(u,v),dad(lca(u,v))lca(u,v),dad(l...
2018-03-13 21:58:34 265
原创 [bzoj3436]小K的农场【差分约束系统】【判负环】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=3436 【题解】 一道比较裸的差分约束模板题。 当opt=1opt=1opt=1时,aaa向bbb连一条权值为−c−c-c的边。 当opt=2opt=2opt=2时,bbb向aaa连一条权值为ccc的边。 当opt=3opt=3opt=3时,aaa向bbb...
2018-03-13 21:39:35 180
原创 [bzoj1085][SCOI2005]骑士精神【暴力】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1085 【题解】 dfs+剪枝即可。 剪枝的方法是,若当前状态与目标状态有kkk个不同。那么至少还要使用k−1k−1k-1步。若当前步数+k−1≥当前步数+k−1≥当前步数+k-1\geq ans则直接退出。 /* -------------- ...
2018-03-07 18:51:38 285
原创 [bzoj1034][ZJOI2008]泡泡堂BNB【贪心】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1034 【题解】 现将两个序列排好序。来考虑AAA对BBB的最大收益。 记la,ra,lb,lbla,ra,lb,lbla,ra,lb,lb为A,bA,bA,b剩余数列的左右端点。 若a[la]>b[lb]a[la]>b[lb]a[la]>b[lb]...
2018-03-07 18:48:10 172
原创 [bzoj1046][HAOI2007]上升序列【dp】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1046 【题解】 记f[i]f[i]f[i]为从第iii个往后的上升序列的最长长度。 那么每遇到一个询问:将数列从前往后扫一遍,若f[i]>Lf[i]>Lf[i]>L则选了iii之后一定能构造出一个合法的序列,为了保证字典序最小,iii一定会在最后的答案中...
2018-03-07 18:37:41 159
原创 [bzoj1050][HAOI2006]旅行comf【MST】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1050 【题解】 枚举最小值,把比它小的边都删去做一遍MST求出最大值,注意MST只要做到SSS与TTT连通。/* -------------- user Vanisher problem bzoj-1050----------------*/#...
2018-03-07 18:31:58 179
原创 [bzoj1047][HAOI2007]理想的正方形【单调队列】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1047 【题解】 横着做一遍单调队列得出每个点往右nnn个的最大/最小值。 接下来用之前的结果竖着做一遍单调队列得出每个n∗nn∗nn*n矩形的最大/最小值。 复杂度O(n2)O(n2)O(n^2)/* -------------- user V...
2018-03-07 18:29:29 186
原创 [bzoj1004][HNOI2008]Cards【群论】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1004 【题解】 由于数量有限制,无法使用Polya定理,要用Burnside引理。即ans=每种置换不动点的数量的平均值ans=每种置换不动点的数量的平均值ans=每种置换不动点的数量的平均值 对于每种置换,我们可以用dp来统计答案。记f[i][j][k]f[i][...
2018-03-07 18:25:35 174
原创 [bzoj1045][HAOI2008] 糖果传递【构造】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1045 【题解】 记X[i]X[i]X[i]为从第iii堆向第i+1i+1i+1堆转移的数量。(第nnn堆转移到111) 那么有a[i]−X[i]+X[i−1]=averagea[i]−X[i]+X[i−1]=averagea[i]-X[i]+X[i-1]=ave...
2018-03-07 18:02:41 281
原创 [bzoj4589]Hard Nim【FWT】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=4589 【题解】 就是求nnn堆石子异或和为000的方案数。 这个东西显然满足结合律,因此倍增计算就行了。暴力的复杂度O(m2∗log2n)O(m2∗log2n)O(m^2*log_{2}n)。 考虑用FWT优化转移,这是经典的xor卷积。 复杂度O(ml...
2018-03-07 13:09:39 253
原创 [bzoj3085]反质数加强版SAPGAP【暴力】【数论】
【题目描述】 http://www.lydsy.com/JudgeOnline/problem.php?id=3085 【题解】 这题同[bzoj1053]但数据范围更大,单纯的高精度不足以通过此题,因此我们要加上更强力的剪枝: 考虑每个质数的更紧的限制:假设现在有iii个PPP,再增加一个花费的代价为PPP利益为(i+1)/i(i+1)/i(i+1)/i。如果当前取了kkk个...
2018-03-06 19:44:04 346
原创 [bzoj1053][HAOI2007]反素数ant【暴力】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1053 【题解】 反素数有一个性质:质数的次幂递减。然后暴力就行了。/* -------------- user Vanisher problem bzoj-1053----------------*/# include <bits/std...
2018-03-06 19:27:25 169
原创 [bzoj1083][SCOI2005]繁忙的都市【MST】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1083 【题解】 MST裸题。。。/* -------------- user Vanisher problem bzoj-1083----------------*/# include <bits/stdc++.h># defin...
2018-03-06 19:24:49 196
原创 [bzoj1088][SCOI2005]扫雷Mine【乱搞】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1088 【题解】 很水的一道题,有很多种解法。 笔者用的是,枚举最边上两个是不是雷,然后接下来的雷的分布方式就唯一了,按位确定并判断是否可行就行了。/* -------------- user Vanisher problem bzoj-108...
2018-03-06 19:19:34 355
原创 [bzoj1070][SCOI2007]修车【费用流】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1070 【题解】 建图方式还是挺神的。 我们不考虑每辆车之前的等待花费,而是考虑每辆车对之后的车的影响,因此,我们把每辆车插到最前面。费用为它即它后面的车数×它的时间它即它后面的车数×它的时间它即它后面的车数×它的时间。 因此,把每个技术人员拆成nnn个点,每个...
2018-03-06 19:16:00 173
原创 [bzoj1087][SCOI2005]互不侵犯King【dp】
【题目描述】 http://www.lydsy.com/JudgeOnline/problem.php?id=1087 【题解】 状压dp不解释 /* -------------- user Vanisher problem bzoj-1087----------------*/# include <bits/stdc++.h># de...
2018-03-06 19:07:15 174
原创 [bzoj4558][JLoi2016]方【容斥原理】【计数】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=4558 【题解】 显然可以从总状态中减去不合法的状态。 对于不合法的状态,可以用容斥原理即:有一个点不合法-有两个点不合法+有三个点不合法-有四个点不合法。 对于总状态,枚举所占位置的大小,再枚举偏移程度即可统计。 对于有一个点不合法:枚举它所占的矩形的外...
2018-03-06 19:03:01 173
原创 [bzoj1061][Noi2008]志愿者招募【网络流】【线性规划】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1061 【题解】 如果一个线性规划问题的每个变量只在两个限制条件中出现过,并且一个是正的,一个是负的,那么就可以把这个问题转换为网络流模型,每个限制条件建一个点,每个变量从负的往正的连边,正的常量从原点连过来,负的常量连向汇点。由于每个限制条件的点都满足流量平衡,所以这个正...
2018-03-06 18:48:16 227
原创 [bzoj1051][HAOI2006]受欢迎的牛【tarjan】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1051 【题解】 tarjan缩点,如果只有一个块出度为0,那么那个块的所有点就是答案,否则无解 /* -------------- user Vanisher problem bzoj-1051 ----------------*/# i...
2018-03-03 21:50:12 165
原创 [bzoj1030][JSOI2007]文本生成器【AC自动机】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1030 【题解】 建出ac自动机,把是串的末尾的点打上标记,若一个点的failfailfail指针指向的点(即它的后缀)有标记,那么这个点也打上标记,然后在这个ac自动机上跑dp,遇到有标记的点就不往后拓展,统计出不可以走的方案数,最后用总数减去方案数即是答案。 ...
2018-03-02 17:20:13 196
原创 [bzoj1029][JSOI2007]建筑抢修【贪心】【堆】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1029 【题解】 按时间T2从早到晚排序,依次取,把当前的决策集合按T1为关键字放入大根堆里去,新来一个建筑时,若能取则直接取,否则与堆顶元素比较,若小于堆顶的T1则将堆顶弹出并选择它。 /* -------------- user Vanisher...
2018-03-02 08:36:50 233
原创 [bzoj1028][JSOI2007]麻将【暴力】【贪心】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1028 【题解】 枚举听哪张牌,再枚举将牌是哪一对。 在从前往后贪心判断是否正确,方法是: 能取刻子尽量选刻子,剩下的与后面组成顺子。 时间复杂度:O(n3n3n^3)/* -------------- user Vanisher...
2018-03-02 08:30:10 245
原创 [bzoj1025][SCOI2009]游戏【dp】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1025 【题解】 ans=lcm(l1..ln)ans=lcm(l1..ln)ans=lcm(l_{1}..l_{n}) 其中 lilil_{i} 为每个变换的循环长度。 接下来就可以dp了 记 f[i][j]f[i][j]f[i][j] 表示考虑了前ii...
2018-03-02 08:24:42 216
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人