会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Claris' Blog
首页
联系
订阅
管理
上一页
1
···
5
6
7
8
9
10
11
12
13
···
38
下一页
2017年9月7日
BZOJ3536 : [Usaco2014 Open]Cow Optics
摘要: 枚举最后光线射到终点的方向,求出从起点出发以及从终点出发的光路,扫描线+树状数组统计交点个数即可。 注意当光路成环时,对应的两个方向应该只算一次。 时间复杂度$O(n\log n)$。
阅读全文
posted @ 2017-09-07 04:02 Claris
阅读(308)
评论(0)
推荐(0)
2017年9月5日
HDU5518 : John's Fences
摘要: 求出平面图的对偶图,那么需要选择一些环,使得这些环可以异或出所有环。 对于两个不同的区域,需要用一个代价最小的环把它们区分开,这对应最小割。 那么求出对偶图的最小割树,所有树边之和就是把所有区域都区分开的最小代价。
阅读全文
posted @ 2017-09-05 02:24 Claris
阅读(382)
评论(0)
推荐(0)
2017年9月3日
BZOJ1423 : Optimus Prime
摘要: 设$f[x]$表示为了保证自己可以取到质数$x$,第一步在$[0,n]$中可以选的数是多少。 这个数是唯一的,因为如果存在两个$f[x]=a,b(a<b)$,那么如果先手取了$a$,后手就能取$b$来让先手取不到$x$,矛盾。 如果$x$与下一个质数之间的差值大于$n$,那么$f[x]$就是结果,当
阅读全文
posted @ 2017-09-03 17:00 Claris
阅读(262)
评论(0)
推荐(0)
BZOJ4095 : [Usaco2013 Dec]The Bessie Shuffle
摘要: 首先将排列和整个序列以及询问都反过来,问题变成给定一个位置$x$,问它经过若干轮置换后会到达哪个位置。 每次置换之后窗口都会往右滑动一个,因此其实真实置换是$p[i]-1$。 对于每个询问,求出轮数,倍增找到最终位置,注意当中途走到$0$时,说明离开了窗口,应及时终止。 时间复杂度$O((m+q)\
阅读全文
posted @ 2017-09-03 04:07 Claris
阅读(679)
评论(0)
推荐(0)
BZOJ3537 : [Usaco2014 Open]Code Breaking
摘要: 考虑容斥,枚举哪些串必然出现,那么贡献为$(-1)^{选中的串数}$。 设$f[i][j]$表示$i$的子树内,$i$点往上是$j$这个串的贡献之和,那么总状态数为$O(n+m)$,用map存储$f$。 将子树的DP值与父亲合并时,按串长分类讨论: 若子树串比较长,那么暴力枚举它的前缀状态转移即可。
阅读全文
posted @ 2017-09-03 02:56 Claris
阅读(507)
评论(0)
推荐(0)
2017年9月1日
BZOJ4681 : [Jsoi2010]旅行
摘要: 将边按权值从小到大排序。 考虑一条路径,一定是最大的若干条边和最小的相应的没选的边进行交换。 这会导致存在一个分界线$L$,交换之后恰好选中前$L$小的边,且只允许$>L$的边与$\leq L$的边进行交换。 枚举$L$,设$f[i][j][k]$表示从$1$到$i$,经过了$j$条前$L$小的边,
阅读全文
posted @ 2017-09-01 03:24 Claris
阅读(533)
评论(0)
推荐(0)
BZOJ4479 : [Jsoi2013]吃货jyy
摘要: 若$k\leq 15$,那么可以设$d[i][S]$表示经过了$S$集合的边,现在位于$i$点的最短路。 可以用Dijkstra算法在$O(n^22^k)$时间内求出。 否则若$k>15$,那么最坏情况下,它们会形成一个团,将这$k$条边连上后,图中最多剩下$7$个连通块。 如果知道哪些边要走,哪些
阅读全文
posted @ 2017-09-01 00:11 Claris
阅读(442)
评论(0)
推荐(0)
2017年8月27日
HDU5511 : Minimum Cut-Cut
摘要: 设$d[x]$表示端点位于$x$子树内部的非树边条数,那么有两种情况: $1.$割去的两条树边$(x,fa[x]),(y,fa[y])$中,$x$是$y$的祖先,那么此时需要割去的非树边数量为$d[x]-d[y]$。 显然固定$x$之后$y$越靠上越好,因此$y$一定是$x$的儿子,枚举即可,时间复
阅读全文
posted @ 2017-08-27 04:29 Claris
阅读(886)
评论(1)
推荐(0)
2017年8月24日
BZOJ4963 : String
摘要: 用SAM支持往末尾在线添加字符的功能。 设$f[i][j]$表示右端点为i的每个左端点的答案,那么当$i$变为$i+1$时,在SAM的parent链形成的树中会新增一个叶子$p$。 对于每个节点,维护它最后一次出现的位置的右端点$v$,那么加入$p$的时候,需要把它到根路径上所有节点的$v$都改为$
阅读全文
posted @ 2017-08-24 04:42 Claris
阅读(623)
评论(0)
推荐(0)
2017年8月23日
BZOJ4867 : [Ynoi2017]舌尖上的由乃
摘要: 首先通过DFS序将原问题转化为序列上区间加、询问区间kth的问题。 考虑分块,设块大小为$K$,每块维护排序过后的$pair(值,编号)$。 对于修改,整块的部分可以直接打标记,而零碎的两块因为本来有序,故可以按照修改区间将其分离成两个有序序列$A$(不在修改区间)和$B$(在修改区间)。 对$B$
阅读全文
posted @ 2017-08-23 05:20 Claris
阅读(1141)
评论(0)
推荐(1)
2017年8月18日
BZOJ2042 : [2009国家集训队]Will的烦恼
摘要: 不难发现题中过程对应着动态维护关于$C$的最大生成树。 为了让$D$最大,同时让字典序最大,那么最后得到的一定是按$pair(C,D,编号)$排序的最大生成树。 对于每条非树边$(u,v,C)$,那么它要早于树上$u$到$v$路径上任意一条同$C$值的边出现。 而非树边之间显然不存在限制关系,因此非
阅读全文
posted @ 2017-08-18 03:23 Claris
阅读(577)
评论(0)
推荐(1)
2017年8月17日
BZOJ2948 : [Poi2001]绿色游戏
摘要: 维护一个保护集合$S$,表示哪些点$A$可能胜利。 首先将所有绿点加入$S$。 $1.$对于一个不在$S$的$A$点,若它存在某个后继在$S$中,则将其加入$S$。 $2.$对于一个不在$S$的$B$点,若它所有后继都在$S$中,则将其加入$S$。 通过拓扑可以$O(n+m)$求出$S$集合,那么剩
阅读全文
posted @ 2017-08-17 04:28 Claris
阅读(401)
评论(0)
推荐(0)
2017年8月10日
BZOJ4962 : 简单的字符串
摘要: 枚举子串的中心,往两侧扩展,将两侧对应位置的字符交替写下来,得到一个字符串$S$。 若前后长度为$L$的子串循环同构,则在$S$中它们对应长度为$2L$的前缀,需要满足它可以由不超过$2$个偶回文串拼接而成。 有一个结论是,若$S=uv$,其中$uv$都是偶回文串,那么要么$u$是$S$的最长偶回文
阅读全文
posted @ 2017-08-10 02:55 Claris
阅读(1087)
评论(0)
推荐(0)
BZOJ4964 : 加长的咒语
摘要: 把$($看作$-1$,$)$看作$1$,设$a$为前缀和,则相当于找两个位置$x,y$使得$a[x]=a[y]$,且$a[x]$是$[x,y]$的区间最大值。 求出询问区间的最大值$o$,然后找到$o$在该区间内最左和最右的出现位置,将其作为答案。 那么剩下的答案只可能在$[l,o)$或$(o,r]
阅读全文
posted @ 2017-08-10 02:19 Claris
阅读(534)
评论(0)
推荐(0)
BZOJ4966 : 总统选举
摘要: 线段树维护每个点的最有可能是答案的数以及它的权重。 合并两个节点的时候,将权重互相抵消,保留较大的那一个。 得到答案后,再在对应权值的Treap中查询出现次数,检查是否真正是答案。 时间复杂度$O(n\log n)$。
阅读全文
posted @ 2017-08-10 01:20 Claris
阅读(487)
评论(0)
推荐(0)
2017年7月28日
BZOJ2702 : 金融风暴
摘要: 求出离每个点最近的关键点,然后用二维ST表回答正方形最大值。 将关键点分为上下两部分,以上为例: 从上到下依次考虑每一行,记录每一列往上最近的关键点的距离,那么最优决策具有单调性,可以分治求解。 时间复杂度$O(n^2\log n+t)$。
阅读全文
posted @ 2017-07-28 03:46 Claris
阅读(323)
评论(0)
推荐(0)
2017年7月26日
BZOJ4167 : 永远的竹笋采摘
摘要: 首先枚举出所有可能成为区间最小差值的点对$(j,i)$。 枚举每个位置作为右端点$i$,假设$a[j]>a[i]$。 找到第一个这样的$j$,那么可以将下一个$a[j]$的范围缩小到$(a[i],\frac{a[i]+a[j]}{2})$。这是因为在这之外的数要么没有$j$优,要么会被$j$考虑到。
阅读全文
posted @ 2017-07-26 01:52 Claris
阅读(472)
评论(0)
推荐(1)
2017年7月24日
FZU2279 : Cantonese
摘要: 首先把相同的事件点合并,那么每个点有时间$t_i$,位置$x_i$,价值$v_i$。 考虑DP,设$f_i$表示按时间从小到大考虑每个事件,目前位于事件$i$的时间与位置时,最多能让多少个事件发生。在$t_i$秒初对方不能碰到$i$,但在这一秒结束结算时,对方可以碰到$i$。 则$f_i=\max(
阅读全文
posted @ 2017-07-24 02:27 Claris
阅读(261)
评论(0)
推荐(0)
2017年7月16日
BZOJ2255 : [Swerc2010]Palindromic DNA
摘要: 考虑2-SAT建图,设$a[i][0..1]$表示$i$变不变,$b[i][0..1]$表示$i$是下降还是上升。 首先相邻的不能同时动,说明$a[i]$和$a[i+1]$里最多选一个。 对于$x$和$y$要相等,假设$s[x]\geq s[y]$。 $1.$若$s[x]-s[y]=3$,则视为$1
阅读全文
posted @ 2017-07-16 04:50 Claris
阅读(306)
评论(0)
推荐(0)
2017年7月15日
FZU2259 : 图
摘要: 假设删除的边是$(u,v)$,分两种情况讨论: $1.$删除$(u,v)$之后$(u,v)$不再连通,那么说明$(u,v)$是图的桥,同时整个图都要是二分图。 $2.$删除$(u,v)$之后$(u,v)$依然连通,那么图不能是二分图,但是删除$(u,v)$之后必须要是二分图,这说明$(u,v)$位于
阅读全文
posted @ 2017-07-15 13:12 Claris
阅读(219)
评论(0)
推荐(0)
上一页
1
···
5
6
7
8
9
10
11
12
13
···
38
下一页
公告