随笔分类 -  贪心

摘要:传送门 考虑每一个位置的期望贡献 $P[i]$ 对于第 $k$ 个位置,设 $sum=\sum_{i=1}^{k}t[k]$,那么 $T-sum$ 即为用最短时间完成完位置 $k$ 后多出来的空闲时间 如果 $T-sum>=k$ 那么这个位置一定能完成,贡献为 $1$ 如果 $T<sum$ ,那么这 阅读全文
posted @ 2019-09-28 16:07 LLTYYC 阅读(173) 评论(0) 推荐(0)
摘要:传送门 发现到 $K$ 不大,考虑有什么和 $K$ 有关的结论 发现答案似乎只会经过前 $K$ 小的边,如果边权第 $K$ 小的边有多条那么可以任意取 证明挺显然的吧,首先如果走了边权排名大于 $K$ 的边那么总的排名也一定大于 $K$,并且如果经过第 $K$ 名的边那么我们就只要考虑只走这一条边的 阅读全文
posted @ 2019-09-28 15:51 LLTYYC 阅读(132) 评论(0) 推荐(0)
摘要:传送门 首先贪心, $S$ 能和 $T$ 匹配就要尽量匹配,剩下的才让 $P$ 来补 在 $S$ 全部匹配上的情况下,看看 $P$ 是否有足够的字符即可 阅读全文
posted @ 2019-09-27 14:22 LLTYYC 阅读(241) 评论(0) 推荐(0)
摘要:传送门 直接枚举填满哪一行,然后看看这一行填满以后哪一列最小 这个预处理一下 $cnt[i]$ 表示初始时第 $i$ 列有几个位置填满就可以做到 $O(m)$ 对于所有情况取个 $min$ 就是答案,复杂度 $O(nm)$ 存输入用 $string$ 即可,多组数据记得清空 阅读全文
posted @ 2019-09-27 14:15 LLTYYC 阅读(186) 评论(0) 推荐(0)
摘要:传送门 看到棋盘先黑白染色冷静一下 然后分析发现,如果初始时两只马在同色的格子,那么一定是后手吃先手 反之一定是先手吃后手 所以分类讨论一下,如果初始在同色的格子,并且后手到达终点的步数更少,那么后手一定赢 并且如果后手威胁到先手终点时的步数比先手到终点的步数少,那么后手下一步直接到先手终点,此时先 阅读全文
posted @ 2019-09-27 14:07 LLTYYC 阅读(212) 评论(0) 推荐(0)
摘要:传送门 看一眼感觉就是 $dp$,但是似乎状态太多了 考虑推推性质 首先每到一行都要把所有宝藏都走到,那么一定会走到最左边的和最右边的宝藏 注意到一旦走完所有宝藏时肯定是在最左边或者最右边的宝藏位置 并且此时要往上走,显然是选择左边或右边的最近的路上去,因为如果选择更远的路上去还不如先上去再走到更远 阅读全文
posted @ 2019-09-27 13:44 LLTYYC 阅读(207) 评论(0) 推荐(0)
摘要:传送门 看到中位数考虑先把数排序一下 然后有个显然的贪心,一个数增加后一定不能比下一个数大,不然我们直接增加下一个数显然更优 所以初始时的中位数操作后也是中位数 那么我们只要考虑中间再往后怎么加使得答案最大 为了使中位数比较大当然先把中间位置加到和下一个位置一样大,然后为了继续增大又要把后面两个位置 阅读全文
posted @ 2019-09-27 13:28 LLTYYC 阅读(290) 评论(0) 推荐(0)
摘要:传送门 首先考虑如何算出答案,考虑枚举中间那个点,显然每个点作为中间的点的次数为入度乘出度 所以答案就是每个点的入度乘出度之和 然后每个点开一个 $vector$ 维护从它出去的点数,每次修改的时候直接暴力改出度然后暴力删边并加入新边 这样可以证明复杂度是对的,这里有两种证明,其中第二种是来自官方题 阅读全文
posted @ 2019-09-24 20:42 LLTYYC 阅读(469) 评论(0) 推荐(0)
摘要:传送门 注意到只要考虑祖先和后代之间的贡献 发现对于一个节点,他和所有祖先最多产生 $log$ 个不同的 $gcd$ 所以每个节点开一个 $vector$ 维护祖先到自己所有不同的 $gcd$ 和这个 $gcd$ 的出现次数即可 之所以可以用 $vector$ 而不用 $set$ 是因为每个节点越祖 阅读全文
posted @ 2019-09-24 19:25 LLTYYC 阅读(449) 评论(0) 推荐(0)
摘要:传送门 垃圾翻译毁一生怎么办 题目看错直接 $GG$ 首先所有 $a_i$ 重复出现的人全都可以加入 考虑剩下的人发现 $a$ 必须是初始那些人的子集才能加入(证明显然),设当前考虑的人为 $x$ 则集合存在 $y$ ,使得 $a_y>a_x$ 并且 $a_y \text{&} a_x=a_x$ 证 阅读全文
posted @ 2019-09-24 19:16 LLTYYC 阅读(447) 评论(0) 推荐(0)
摘要:传送门 显然答案等于初始时的答案减去最多可以减少的代价 考虑在某个路段 $[l,l+1]$ 用一次加速的影响,设 $r$ 为 $l$ 往右(不包括 $l$)第一个车要等人的站,那么所有下车的站在 $[l+1,r]$ 之间的人都可以少一秒 设第 $i$ 个站下车 $leav[i]$ 人,那么贡献即为 阅读全文
posted @ 2019-09-24 19:04 LLTYYC 阅读(166) 评论(0) 推荐(0)
摘要:传送门 这一题基础是二分图匹配,并且要知道一个 $Hall$ 定理:对于二分图能完全匹配的充要条件是,设点数少的那边为左边,点数为 $n$,对于 $k \in [1,n]$ ,左边任意 $k$ 个点,右边都要有至少有 $k$ 的点与左边这些点相连 证明好像也不难,首先必要性是显然的 然后考虑对于左边 阅读全文
posted @ 2019-09-23 20:18 LLTYYC 阅读(188) 评论(0) 推荐(0)
摘要:传送门 显然直接 $AC$ 自动机上数位 $dp$ 一下 预处理出 $f[i][j]$ 表示当前匹配到 $AC$ 自动机上的节点 $j$ ,再放 $i$ 个位的数字后不冲突的方案数 初始时 $f[0][j]=1$ ,其中 $j$ 不是匹配节点(匹配节点显然指的是本身是某个模式串的结束节点或者 $fa 阅读全文
posted @ 2019-09-22 15:48 LLTYYC 阅读(242) 评论(0) 推荐(0)
摘要:传送门 这个题一眼 $dp$ 就是设 $f[i][0/1]$ 表示我们只考虑前 $i$ 个位置,并且保证覆盖了前 $i$ 个位置,当前位置 选/不选 的最小代价 考虑转移,设题目给出的字符串为 $s$ 首先 $f[i][0]$ 必须从 $f[j][1]$ 转移过来,其中 $ j+k>=i \text 阅读全文
posted @ 2019-09-22 02:31 LLTYYC 阅读(832) 评论(5) 推荐(2)
摘要:传送门 对于询问,首先如果正数数量不到 $c$ 个显然无解 然后如果大于等于 $s$ 的数大于等于 $c$ 个,那么显然有解 否则,考虑贪心地取数,首先初始大于等于 $s$ 的哪些数我们每次取都可以取到,所以直接把 $c-cnt$ ,其中 $cnt$ 是初始大于等于 $s$ 的数的个数 然后考虑剩下 阅读全文
posted @ 2019-09-21 13:58 LLTYYC 阅读(228) 评论(0) 推荐(0)
摘要:传送门 注意到题目给的条件,序列初始只有 $-1,0,1$,猜一下最终的数列在最优情况下也都是 $-1,0,1$ 证明也挺显然吧,如果一个数初始为 $-1$ ,并且前面一个数是正数,那么这个正数为了让 $-1$ 变成大于等于它的数,不论如何都必须操作两次 如果一个数初始为 $0$ ,那么要变成大于等 阅读全文
posted @ 2019-09-21 13:18 LLTYYC 阅读(195) 评论(0) 推荐(0)
摘要:传送门 首先每一段连续的 $...$ 都是互不影响的,所以可以一段段考虑 考虑最简单的情况,此时每一段都大于等于 $a$ 并且小于 $2b$ ,那么每一段都只能放一次,胜负直接根据段数即可得到答案 考虑如果存在段长小于 $a$ 却大于等于 $b$ 的情况,此时后手可以随时放在那个位置,当然也可以不放 阅读全文
posted @ 2019-09-20 13:38 LLTYYC 阅读(430) 评论(0) 推荐(0)
摘要:传送门 容易想到 $dp$,但是如果直接设 $f[i][j]$ 表示修正完前 $i$ 个位置,第 $i$ 个位置增加了 $j$ 高度显然是不行的 考虑有性质,发现每个位置只会被左右两个位置影响而改变,即如果一边等于它那么才要考虑增加它的位置,并且如果此时另一边恰好比它原本高度大 $1$,这个位置才要 阅读全文
posted @ 2019-09-20 13:25 LLTYYC 阅读(351) 评论(0) 推荐(0)
摘要:传送门 考虑如何保证限制,首先团队数最大就是 $min(c,m)$ 但是还不够,每个团队还要 $3$ 个人,所以还要和 $(c+m+x)/3$ 再取 $min$ 这样就满足所有限制了 阅读全文
posted @ 2019-09-20 13:15 LLTYYC 阅读(344) 评论(0) 推荐(0)
摘要:传送门 看到棋盘上跳马,发现如果把棋盘黑白染色,那么每次移动都是从白点到黑点,从黑点到白点 所以直接根据黑白染色判断每个位置的马的颜色即可 阅读全文
posted @ 2019-09-20 13:11 LLTYYC 阅读(320) 评论(0) 推荐(0)