摘要:菜鸡队训练实录。 现场赛记录:[名称:奖项/排名] 2017: ICPC Shenyang:Gold/3 CCPC Hangzhou:Gold/3 ICPC Beijing:Gold/13 CCPC Final:Silver/22 ICPC Asia East Continent League Fi 阅读全文
posted @ 2017-09-12 02:39 Claris 阅读 (7775) 评论 (4) 编辑
摘要:菜鸡队训练实录。 现场赛记录:[名称:奖项/排名] 2016: ZJPSC:Gold/1 CCPC中南邀请赛:Gold/1 ICPC Dalian:Gold/24 ICPC Beijing:Gold/9 CCPC Final:Bronze/40 ICPC China-Final:Gold/12 20 阅读全文
posted @ 2016-10-21 18:17 Claris 阅读 (5514) 评论 (4) 编辑
正文内容加载中...
posted @ 2019-11-04 17:33 Claris 阅读 (431) 评论 (0) 编辑
摘要:A. Salty Fish 假设要偷走所有的苹果,那么现在需要放弃一些苹果,并且黑掉一些监控相机以保证能偷走没有放弃的苹果,我们需要最小化放弃的苹果的收益之和加上黑掉相机支付的代价的总和。 考虑最小割建图: 源点$S$向每个监控相机连边,割掉这条边的代价为黑掉它的代价,割掉这条边表示黑掉这个监控相机 阅读全文
posted @ 2019-08-10 01:20 Claris 阅读 (564) 评论 (4) 编辑
摘要:题解: solution Code: A. Apple Business B. Balanced Diet C. Line-line Intersection D. Master of Data Structure E. Minimum Spanning Tree F. Mini-game Befo 阅读全文
posted @ 2019-06-25 01:23 Claris 阅读 (491) 评论 (0) 编辑
摘要:要找的就是这棵树的带权重心,以带权重心为根时每棵子树的权值和不超过总权值和的一半。 因此按$\frac{v[i]}{\sum v[i]}$的概率随机选取一个点$x$,则重心有$\frac{1}{2}$的概率落在$1$到$x$的路径上,期望随机次数为$O(1)$。 随机方式可以直接随机一个$1$到$\ 阅读全文
posted @ 2019-05-12 03:59 Claris 阅读 (472) 评论 (0) 编辑
摘要:将每个不是障碍的格子标号,设三只狼的位置分别为$A,B,C$,羊的位置在$D$。合法状态中强行限制$A<B<C$,这样状态数只有$\frac{n^8}{6}\approx 1.6\times 10^7$。 设$f[S],g[S]$表示目前局面是$S$,狼/羊正在决策,最优情况下羊会不会被围住。 若$ 阅读全文
posted @ 2019-02-21 02:08 Claris 阅读 (343) 评论 (0) 编辑
摘要:首先特判多边形面积$=0$的情况,此时内部没有点,答案只会在顶点处取到。 对于面积$>0$的情况,离线询问,将所有多边形合在一起得到平面图,然后求出对偶图,那么每条多边形边的两侧分别对应对偶图中两个域。 每个多边形把这些域分成内外两个连通块,也就是保留除了多边形边之外的所有边后对偶图的连通情况。 把 阅读全文
posted @ 2019-02-20 23:51 Claris 阅读 (165) 评论 (0) 编辑
摘要:设$base$表示直接能看到的面积,$f[i]$表示仅去掉线段$i$后新增的面积,$g[i][j]$表示仅去掉线段$i$和$j$后新增的面积。 删除一条线段的答案为$base+\max(f[i])$。 删除两条线段的答案为$base+\max(g[i][j]+f[i]+f[j],f最大值+f次大值) 阅读全文
posted @ 2019-02-20 02:52 Claris 阅读 (144) 评论 (0) 编辑
摘要:若$R=0$,那么显然答案为离原点最远的点到原点的距离。 否则若所有点都在原点,那么显然答案为$R$。 否则考虑二分答案$mid$,检查$mid$是否可行。 那么每个点根据对应圆交,可以覆盖圆上的一部分,每个可行方案都可以通过平移使得刚好卡住某个交点。 枚举每个交点,算出圆上$n$个位置的坐标,然后 阅读全文
posted @ 2019-02-18 03:30 Claris 阅读 (258) 评论 (0) 编辑
摘要:若仅保留这$k$个点仍然有环,那么显然无解。 否则设$A$表示这$k$个点的集合,$B$表示剩下的点的集合,因为是竞赛图,每个集合内部的拓扑关系是一条链,方便起见将所有点按照在所在集合的链上的位置进行重标号。 对于$B$中每个点$i$,求出$l_i$表示最小的$j$,满足$B_i\rightarro 阅读全文
posted @ 2019-02-16 00:33 Claris 阅读 (136) 评论 (0) 编辑
摘要:离线处理所有询问。 对于$r-l\leq 50$的情况: 按照串长从$1$到$51$分别把所有子串按照第一位字符为第一关键字,上一次排序结果为第二关键字进行$O(n)$基数排序。 同理也可以用上一次比较结果来判断这一次某两个子串是否相同。 对于每个询问,找到排序结果中对应的区间,在里面二分出起点$x 阅读全文
posted @ 2019-02-15 02:12 Claris 阅读 (258) 评论 (0) 编辑
摘要:设第$i$个区间的左端点为$a[i]$,区间长度为$len$,要覆盖的部分的长度为$all$,因为区间左端点递增,所以最优方案中它们的位置仍然递增。 对于链的情况,要满足三个条件: 1. 区间$i$可以接上区间$i-1$ 设$f[i]$表示最优解中第$i$个区间左端点的位置,则$f[i]=\min( 阅读全文
posted @ 2019-02-12 02:12 Claris 阅读 (90) 评论 (0) 编辑
摘要:将所有物品按照$b$的选择顺序排序,则先手在任意前$i$个物品中最多只能拿走$\lceil\frac{i}{2}\rceil$个物品。 将每个物品的价值设为$a+b$,那么答案为先手拿走的价值和减去所有物品的$b$之和,目标是最大化先手拿走的价值和。 如果不考虑修改,则满足拟阵,可以贪心选取,修改时 阅读全文
posted @ 2019-02-11 03:26 Claris 阅读 (227) 评论 (0) 编辑
摘要:设$f0[i][j][x][y][S]$表示盗贼位于$(i,j)$,守卫位于$(x,y)$,每棵苹果树苹果数量为$S$,盗贼先手时盗贼还能偷多少苹果。 设$f1[i][j][x][y][S]$表示盗贼位于$(i,j)$,守卫位于$(x,y)$,每棵苹果树苹果数量为$S$,守卫先手时盗贼还能偷多少苹果 阅读全文
posted @ 2019-02-03 01:08 Claris 阅读 (176) 评论 (0) 编辑
摘要:假设最大的圆半径为$R$,以$2R$为大小将地图划分为一个个格子,那么每个圆只需要检查圆心在附近$9$个格子内部的所有圆。 在当前圆的半径不足$\frac{R}{2}$时重构网格,那么最多重构$O(\log R)$次,且每个圆最多被检查常数次。 时间复杂度$O(n\log n\log R)$,利用H 阅读全文
posted @ 2019-01-31 00:02 Claris 阅读 (276) 评论 (0) 编辑
摘要:题意同3495,但是内存限制收紧了,不能采用3495的前后缀优化建图的方式。 注意到“每个集合恰好选择一个点”可以放宽成“每个集合最多选择一个点”,对于最后求出的方案里,如果某个集合没选点,任选一个就好了。 考虑2-SAT建图,有两类边: 1. 对于每条给定的边$(u,v)$:如果不选$u$就必须选 阅读全文
posted @ 2019-01-15 22:26 Claris 阅读 (135) 评论 (0) 编辑
摘要:令先手为$A$,后手为$B$,将相邻同色棋子合并成块,首先特判一些情况: 无视所有大小为$1$的块,考虑剩下块里相邻两块,它们往外扩张比往内缩更优: 如果是形如[A_A]___B__A__BA____B___[AA_A],两边同色,所以中间这些块(包括位置)可以删除,不影响游戏结果。 如果是形如[A 阅读全文
posted @ 2019-01-03 02:49 Claris 阅读 (155) 评论 (0) 编辑
摘要:显然每一位的限制独立,对于每一位求出仅限制该位下的最大数,然后求最小值即可。 假设当前要求数字$d$的答案: 考虑填数字的过程,可以看作依次考虑一个序列中的每个数,当前缀和$<0$时退出。 设$dp[i][j][k]$表示正在考虑最低的$i$位,高位部分有$j$个$d$,第$i$位能不能填$0$为$ 阅读全文
posted @ 2018-11-20 15:40 Claris 阅读 (178) 评论 (0) 编辑
摘要:考虑任意一棵生成树,它的代价是一个一次函数。 因此所有生成树的最小值随着时间变化呈现出的是一个上凸壳。 三分查找最大值即可。 时间复杂度$O(m\log m\log w)$。 阅读全文
posted @ 2018-11-17 02:16 Claris 阅读 (212) 评论 (0) 编辑
摘要:A. Drone With a Camera 三分套三分。 B. Fibonaccis’ vouchers 考虑用最少的Fib数表示一个数,只需要从大到小贪心选取每个Fib数。 将一个数写成Fib进制,可以得到一个$01$串,满足没有连续两个$1$。 从高位到低位逐位确定答案的每一位是$0$还是$1 阅读全文
posted @ 2018-11-13 19:27 Claris 阅读 (571) 评论 (0) 编辑
摘要:将所有$A$和$B$混在一起排序,那么每个$B$要匹配一个$A$,从左往右依次考虑每个数: 如果是一个$B$: 如果左边没有多余的$A$,那么将其放入堆$q_C$中,表示这个$B$还未匹配。 否则选择左边代价最小的$A$和这个$B$进行匹配,并把代价取反,加上这个$B$往右匹配的贡献后放入堆$q_B 阅读全文
posted @ 2018-11-03 17:20 Claris 阅读 (1034) 评论 (0) 编辑