0%

    有 $n$ 名宇航员,他们每个人有大小为 $a_i$ 的能量。一个初始具有 $h$ 单位能量的邪恶的人形生物来这里吸收宇航员们的能量。

    人型生物可以做以下三个动作:

    • 吸收一个能量值严格低于当前人型生物的宇航员。

    • 将自身的能量值翻倍 ($\times 2$), 这个操作最多能进行两次。

    • 将自身的能量值翻三倍 ($\times 3$), 这个操作最多能进行一次。

    其中,当一名具有 $a_i$ 能量的宇航员被吸收时,这名宇航员消失,人型生物的能量增加 $\lfloor {a_i\over 2} \rfloor$。

    请你帮他算一算,如果他用最佳方案进行操作,他最多能吸收几名宇航员的能量?

    第一行包含一个整数 $t\ (1\leq t \leq 10^4)$, 表示数据组数。

    对于每组数据,第一行包含两个整数 $n\ (1\leq n \leq 2\cdot 10^5),h\ (1\leq h \leq 10^6)$, 分别代表宇航员人数和人形生物的初始能量。第二行包含 $n$ 个整数 $a_i\ (1\leq a_i \leq 10^8)$, 表示每名宇航员的能量。

    保证 $\sum n\leq 2\cdot 10^5$。

    对于每组数据,在单独的一行里输出一个整数,表示人形生物可以吸收宇航员的最大数量。

阅读全文 »

    PS:此题目与类似的CF1196D2唯一的不同之处在于数据的范围。

    给你$q$组询问($1 \le q \le 2000$)

    每组询问会先给你一个$n$和一个$k$($1 \le k \le n \le 2000$)

    下一行是一个字符串$s$(数据保证$s$只由大写字母$R$、$G$、$B$组成,输入数据保证所有$s$的长度和$ \le 2000$)

    现在问你最少修改多少次$s$中的字母(一次只能修改一个字母),才能使得$s$的某一个子串是字符串$RGBRGBRGB...$的子串,同时该子串的长度$ \ge k$。

阅读全文 »

    Petya 有一个大小为 $n×m$ 的矩形版。一开始,在板子上有 $k$ 个芯片,第 $i$ 个芯片位置位于第 $sx$ 行与第 $sy$ 列的相交点上。

    在一次操作中, Petya 可以把所有的芯片向左、向右、向下或者向上移动一格。

    如果芯片在 $(x, y)$ 格中,则在操作之后:

    • 往左:坐标为 $(x, y - 1)$;

    • 往右:坐标为 $(x, y + 1)$;

    • 往下:坐标为 $(x + 1, y)$;

    • 往上:坐标为 $(x - 1, y)$;

    如果现在芯片在版的边缘上,然而 Petya 将其移向边缘,那么芯片的位置保持不变。

    对于每一个芯片, Petya 选择了他应该到达的位置。注意:芯片不须在这个地方停下来。

    由于 Petya 时间不多, 总操作数不能超过 $2nm$。

    你需要求出 Petya 应该做的操作:在不超过 $2nm$ 的操作里让每个芯片走过 Petya 选定的位置一遍。或者说明是不可能达到目的的。

    第一行三个整数 $n,m,k$($1 \le n,m,k \le 200$),分别表示矩形板的长,矩形板的宽和芯片的个数。

    接下来的 $k$ 行每行两个整数 $ sx_i, sy_i$ ($1 \le sx_i \le n, 1 \le sy_i \le m$),表示第 $i$ 个芯片的初始位置。

    再接下来的 $k$ 行每行两个整数 $ fx_i, fy_i$ ($1 \le fx_i \le n, 1 \le fy_i \le m$),表示第 $i$ 个芯片须达到的位置。

    输出第一行一个整数,表示能达到目的的操作次数(不需要最小)。

    在第二行输出一个序列,用 "L、R、D、U" 分别表示 "左、右、下、上" 。

    若无解,则输出 $ -1 $ 。

阅读全文 »

    给你 $t$ 组数据。对于每组数据给你一个 $n \times m$ 的网格($n$ 为网格高度,$m$ 为网格宽度,且网格的数量为偶数),要求在网格中放置多米诺骨牌,每个骨牌占据 $1\times2$ 的网格区域。对于这 $\frac{nm}{2}$ 个骨牌,要求正好有 $k$ 个横着放置,而剩下的 $\frac{nm}{2}-k$ 个竖着放置,正好铺满台面。现在要你给出对于每组 $n$, $m$ 和 $k$,是否有一种方案满足条件。如果有,输出 YES,反之输出 NO

阅读全文 »

    给定一个含有 $n$ 个点的有根树和一个长度为 $n$ 的排列 $p$,你需要给这棵树的每一条边赋权,使得对于所有的 $1 \leq i<j \leq n$,点 $p_{i}$ 到根的距离小于点 $p_{j}$ 到根的距离。

    你需要保证每条边的边权都是 $[1,1 \times 10^{9}]$ 内的整数。

    多组数据。若无解,输出 $-1$。否则输出 $n$ 个整数,第 $i$ 个整数 $w_{i}$ 表示点 $i$ 到其父亲的边权为 $w_{i}$,特别地,默认根到其父亲的边权为 $0$

    Translated by @HPXXZYY.

阅读全文 »

    平面上有n个点,第i个点在(xi,yi)处

    小t想绘制一个矩形区域(如下图

    该矩形被其左侧、底部和右侧的三条线围起:x=l,y=a和x=r(l, r, a 都可以为实数并且l<r)。

    求可能有多少种不同的非空点集可以被小t的矩形覆盖,我们认为两个集合不同是在一个集合中存在一个点而不在另一个集合中存在。

阅读全文 »