随笔分类 -  From——JOI(SC)

摘要:莫名其妙成为周更博主…… 在后文中只考虑询问起点在终点左边的情况,右边的情况 reverse 即可,相等的情况是平凡的。 做一个小小的转化:把涉及第 $i$ 个点的时间均减去 $i$,一条连接 $i$ 与 $i+1$ 的道路因为从 $i$ 到 $i+1$ 所以被第 $i$ 个点涉及。这样左右移动不会 阅读全文
posted @ 2020-02-24 11:07 cjoier_Itst 阅读(658) 评论(0) 推荐(3)
摘要:代码自己去LOJ看 JOI2013 彩灯 把序列划分成若干极长交替列,那么最优的方案一定是将一个极长交替列翻转使得连续的三个极长交替列合成一个。计算相邻三个极长交替列长度的最大值即可。 搭乘IOI火车 DP:$f_{i,j}$表示两个串的起点分别在$i,j$位置最长的拼接长度,转移就先放一个'I', 阅读全文
posted @ 2019-10-12 16:35 cjoier_Itst 阅读(2034) 评论(7) 推荐(6)
摘要:"传送门" 首先显然的是可以一开始先染好再做、每个点只会被染一次、最后只剩下两种颜色。 接下来是结论时间:序列可以反转的充要条件是除了首尾的极大颜色连通块以外其他极大颜色连通块长度为偶数。 证明充分性:考虑归纳。 如果序列中有$3$个极大颜色连通块且中间的连通块长度为偶数,那么先将两端的颜色块折成$ 阅读全文
posted @ 2019-09-19 22:40 cjoier_Itst 阅读(427) 评论(0) 推荐(2)
摘要:"传送门" 先二分一个最大速度$v$。 分析移动的性质。很显然的事情是在火焰两边的所有人都会往火焰的方向以最快的速度运动,这样可以使当前位置更早获得火焰,同时当前拥有火焰的若干个人为了传递火焰自然也会以最快的速度移动。 接下来考虑某个没有火的人碰上了有火的人之后决策如何。假设有火的人$A$碰上了无火 阅读全文
posted @ 2019-09-19 22:26 cjoier_Itst 阅读(437) 评论(5) 推荐(1)
摘要:"传送门" 看到出现次数自然地考虑莫队。 但是发现如果需要删除并动态维护答案的话,则要用一个堆来维护答案,增加了一个$log$。但是加入操作却没有这个$log$,所以我们考虑避免删除操作。 分块,设$l_i,r_i$表示第$i$个块的左右端点,设$f_{i,j}$表示区间$[l_i,r_j]$的答案 阅读全文
posted @ 2019-09-14 22:35 cjoier_Itst 阅读(245) 评论(0) 推荐(0)
摘要:"传送门" 先考虑每一个攻击方的龙和被攻击方的龙可以与多少个被攻击方/攻击方的龙匹配。 对于攻击方的龙$A$和被攻击方的龙$B$,在道路为线段$(C,D)$的情况下,能够与下图位置的所有对应属性的龙匹配: (务必注意$\Delta BDC$不能匹配) 这一些位置可以用以$C,D$作为直角坐标系中心点 阅读全文
posted @ 2019-07-10 17:23 cjoier_Itst 阅读(462) 评论(0) 推荐(2)
摘要:"传送门" 一件值得注意的事情是:平面上两个不相交的三角形一定会存在两条公切线 那么我们可以枚举三角形的公切线,计算有多少个三角形的公切线之一为该线,所有的答案除以2就是我们要求的答案。 考虑如何去计算有多少个三角形的公切线之一是给定直线的公切线。首先这条直线上一定会有两个给出的点,这条直线把平面分 阅读全文
posted @ 2019-05-31 21:04 cjoier_Itst 阅读(308) 评论(0) 推荐(0)
摘要:"传送门" 将乘客按照$D_i$从小到大排序并重新标号。对于服务站$j$,如果$S_j \mod T \in (D_i , D_{i+1})$,那么可以少接一些水,在保证司机有水喝的情况下让编号在$ "x,i" $的乘客下车(我们将这个区间称作这个服务区的下车区间),然后到达这个服务站接水。区间$[ 阅读全文
posted @ 2019-03-29 19:59 cjoier_Itst 阅读(440) 评论(0) 推荐(2)