
题解:CF2120E Lanes of Cars
根据贪心,不难想到每次会把最长队伍末尾的那辆车移动到最短队伍的末尾。但由于 $k$ 的存在,会导致一些冗余移动的存在。设需要挪动 $C$ 辆车,则怒气值可以表示为 $f(C) + kC$,其中 $f(C)$ 是排队所产生的怒气值,$kC$ 为变道产生...

根据贪心,不难想到每次会把最长队伍末尾的那辆车移动到最短队伍的末尾。但由于 $k$ 的存在,会导致一些冗余移动的存在。设需要挪动 $C$ 辆车,则怒气值可以表示为 $f(C) + kC$,其中 $f(C)$ 是排队所产生的怒气值,$kC$ 为变道产生...

设 $f_i$ 表示答案长度为 $i$ 时,结尾的最小值。因此当 $f_{i - 1} \le r_i$ 时可以进行转移 $f_i = \max (f_{i - 1},l_i)$。于是可以得到 $O(n^2)$ 的代码: 12345678910for...

题目链接,感觉是计数神题。 原题的模型是每一步可以选择顶部 $k$ 张牌的一个子集 $X_i$(可以为空)放在袋中,求 $m$ 轮之后所有可能的袋子里牌所组成的集合的大小之和。考虑进行转化,只考虑前 $k$ 张牌,每张牌都有一个属性 $t_i \in...

首先考虑无解的情况。 当这棵树为一条链时,答案取到最大值。证明很简单,假设存在一个节点 $u$ 至少有 $2$ 个孩子节点,任取两个 $v_1,v_2$,则 $\text{dep}(\operatorname{LCA}(v_1,v_2)) = \te...

基本信息本赛季由 组队,全靠大佬带飞~。 中文队名:正在验证该队是否是真人。 英文队名:Verifying we are human. 队友 Sky 的记录!被带飞!!! 训练情况总览 $\texttt{Id}$ $\texttt{Da...

本文做法可能存在错误,详见 讨论。 由 G1 可知,只要能确定根节点的位置,就能够用 $n$ 次操作获得答案。因此,本题就需要在不超过 $200$ 次的询问中获得根节点的位置。 设当前点为 $u$,与 $u$ 相邻的点组成集合 $S$。若当前询问...

设 $f_r$ 表示最小的左端点 $l$,使得 $[l,r]$ 区间的询问均可合法。在处理询问时,转化为判断是否 $f_r \le l$ 合法即可。 首先考虑如何求出 $f_i$。尝试使用双指针,当前 $[l,r]$ 区间的询问均合法,当加入 $r’...

正难则反,考虑长度为 $i$ 的排列得到正确的结果的方案数。 设 $dp_i$ 表示长度为 $i$ 的排列直到循环完也没有提前 return 的方案数。考虑 $i$ 所放置的位置,由于不会提前 return,也就说明该数字所在的位置为 $[i - k...

不难发现形如 LIT 的串是万能的。证明如下: 可以多生成一个 L 变为 LILT。 可以多生成一个 T 变为 LTIT。 想要多生成一个 I,先选择上面两个的其中一个操作,然后同理即可。 进一步地,只要存在相邻两个字母不同,就可以花费一个操作变...

首先,在最优策略的条件下,在没有多余信息的情况时,先手不会主动去猜测,只会不断地尝试询问。 接下来我们尝试列出以下表格。其中,上方是先手,左侧是后手。先手询问一张自己手中没有的牌,称之为问;询问一张自己手中有的牌,称之为诈: 先后手 问(自己...