Loading...
NOI2021 加油!
A贪心想法先把 $a$ 和 $b$ 拼成若干个 $ab$,然后如果有剩余的可以在对应的开头/结尾放,所以答案是 $c+\min(a,b)+[a \neq b]$。B枚举我们强制让这个人 $A \to B$ 选择那一班航班起飞(这样就相应 ban 掉了一些航班),然后双指针维护处对应的 $B \to C$ 最近能从哪里开始起飞,就是查一个第 $x$ 大的问题了。因为排好序了可以 $O(1)$ ...
A如果满足条件可以注意到一定有 $a_i = a_{i+k} = a_{i+2k} = \ldots$,所以先判断这个,然后只需要判断 $[1 \ldots k]$ 能否被填成平衡的串即可。B如果先手一步能抓住后手,那么先手必胜。如果 $db \leq 2da$,那么一定存在一个时间后手被先手逼到角落里但是后手无法通过向先手的范围跳跃而跳出攻击范围。那么按照后手的意愿,先后手最后的稳定状态一...
A考虑分步做合成 coal 和合成 craft 。发现我们做 $n$ 次替换后拥有的 stick 数量是 $nx-n+1$,首先要凑出 $k$ 个 coal,然后还要剩下来 $k$ 个 stick 合成,所以我们造 stick 的限制就有 $nx-n+1 \geq ky+k$,这样 $n$ 就是交易 stick 用掉的次数了,再加上 $k$(交易 coal 的次数)B把未被锁定的位置从大到小...
A考虑 dp。设 $f_{i,0/1}$ 表示考虑到根是 $i$ 前缀,最后一次删除的串长度为 $2/3$ 的方案数。转移就判断一下两次长度相等是否子串相等即可。B这种最长的最短路链问题贪心超过两步都是错的。首先 $O(n^2)$ 预处理 $dis_{i,j}$ 表示 $i \to j$ 的最短路,注意到贪心一步是正确的,我们去枚举 $b,c$,预处理最远,次远,第三远的点即可(因为路径不...
A首先肯定位数越多越好,所以先用尽量多的放 $1$。然后看一下能否用最后一个把最高位上的 $1$ 换成更大的数字(实际上你只能换成 $7$)B处理处原串每个前缀的权值 $a_i$。如果 $a_n=0$ 并且存在权值为 $x$ 的前缀就有无数个,否则就是所有形如 $x+ka_n,k \in \mathbb{N}$ 的权值的前缀的个数。C如果 $s$ 的字符集不包含 $t$ 的字符集就无解。否则...