题解:P10701 [SNCPC2024] 致命公司
看完题目后盲猜二分答案()。 题目的难点显然是如何分配凝视的时间于不同的通道,以及如何在一次凝视时将通道内的子弹进行标记。 二分时刻 $t$,对于所有的子弹,有以下情况: 在 $t$ 时刻,该子弹仍未出现,忽略该子弹。 从子弹出现到 $t$ 时刻,...
看完题目后盲猜二分答案()。 题目的难点显然是如何分配凝视的时间于不同的通道,以及如何在一次凝视时将通道内的子弹进行标记。 二分时刻 $t$,对于所有的子弹,有以下情况: 在 $t$ 时刻,该子弹仍未出现,忽略该子弹。 从子弹出现到 $t$ 时刻,...
将题意进行简单的转换,枚举 $S_k$,然后再枚举其中的断点 $i$,将其分为 $S_k[:i]$ 和 $S_k[i + 1:]$。因此只需要求出前缀为 $S_k[:i]$ 和 $S_k[i + 1:]$ 的乘积,不难想到对前缀和后缀分别建立 $\t...
一道很好的构造题。简单来说,给你一个序列 $\{b\}$,$b_i$ 表示 $a_i$ 各位数字之和,请还原出序列 $\{a\}$。有两个附加条件,一是序列 $\{a\}$ 单增,二是 $\{a\}$ 尽可能的小。 对于第二个条件,很容易想到要贪心求...
对于 $k$ 对有序的三元组 $(x,y,z)$ 为不能走的路线。本题对选择恰当的工具存储三元组有着较高的要求。 首先想到的是 map 与 set,令 set <int> ban[x][y] 记录形如 $x \to y \to z_i$ ...
由题可知这是一棵树,因此求每一条边经过的次数可以通过树上差分解决。而现在只有部分(有向)边需要花费,因此就需要找到一种能够记录单向花费的信息。考虑到一条边连接的两个点因在树上而深度不同,所以可以分为叶子指向父节点与父节点指向叶子两种边。形象化地,第一...
先考虑 $N = 1$ 的情况。若先手胜,我们称 $a_i$ 为必胜点,否则为必败点。显然 $1,2,3$ 均为必胜点;而 $4 = 1 + 3 = 2 + 2$,无论如何都是后手胜,所以为必败点。如果这时候你不知道如何去分析,可以尝试打出必败点的表...
先处理函数 $f_i$,有 $f_i = \sum \limits _{j = i - m}^{i - 1} f_j$,这个递推式显然可以通过矩阵乘法进行优化。设 $F_i$ 表示通过递推函数 $f_i$ 得到的矩阵,则有以下矩阵的递推(以 $m ...
有一个显然的贪心结论,就是先完成任务截止时间考前的,若在前面的都无法完成,那么后面的更加不可能完成。题目十分良心,$a_i$ 已经在输入时升序给出。 对于每个任务,需要用尽可能少地耗时完成尽可能多的百分比,每个计划的状态均为选或不选,这不就是 $0-...
部分参考了 这篇 xianggl巨佬的博客。 由于 $d \le 20$,考虑将不等关系的信息存放在数组中,转换为最大距离 $d$ 时的信息。考虑单独处理每一个点时,直接暴力修改与某一点 $x$ 距离为 $[0,d]$ 的点,此时不难分析出时间复杂度...
首先提醒一下不要读错题目,因为题目并没有要求旋转 $90$ 度是顺时针还是逆时针。 将 $dx,dy$ 分开考虑,题目转换为 $dx = A_1,dy = 0$,然后 $A_{2i + 1},A_{2i} (i > 0)$ 分别对 $dx,dy...