暑假集训D21 2023.8.16 contest F SWERC 2021

C.Derby della Madonnina

数轴上有 \(n\) 个点 ,你初始时在原点,每秒最多移动 \(v\) 个单位.在 \(t_i\) 秒时若处于 \(a_i\) 点可以得到 \(1\) 分,问能得到的最大分数是多少?( \(1\leq n\leq 2\cdot10^5 ,1\leq v\leq 10^6 ,1\leq t_i\leq 10^9,- 10^9\leq a_i\leq 10^9\))保证输入的 \(t_i\) 是递增的.

\(\operatorname{Solution}\)
\(|a_i|>t_i*v\) ,这个点一定不可能到达.
任取两个点 \(i,j\) ,设 \(t_i<t_j\) .
对于 \(t_i<t_j\) 的两个点,如果 \(|a_i-a_j|\leq v*(t_j-t_i)\) ,就可以从点 \(i\) 转移到点 \(j\) .

\(a_i<a_j\) 时,若 \(a_j-a_i\leq v*(t_j-t_i)\) ,即 \(v*t_i-a_i\leq v*t_j-a_j \ ①\) 则可以到达.
\(a_i>a_j\) 时,若 \(a_i-a_j\leq v*(t_j-t_i)\) ,即 \(v*t_i+a_i\leq v*t_j+a_j\ ②\) 则可以到达.

对于 ①②式,如果 \(t_i>t_j\) 该怎么办?从时间晚的点转移到时间早的点显然是不合理的.

那种情况一定不会使得等式成立.设想如果 \(t_i>t_j\) , \(|a_i-a_j|\leq v*(t_j-t_i)\) 一定不成立.因此下面不等式如果成立,一定是从时间早的转移过来的.

最后排序依次转移即可,类似于 \(LIS\) 的解法.

时间复杂度 \(\operatorname{O}(nlog n)\)

D.Ice Cream Shop

沙滩上 \(n\) 群人排成一横排,每一群人有 \(p_i\) 人,每两群人之间的间隔为 \(100m\) ,另外沙滩上有一些商店,一横排排列在沙滩上,给出他们的位置 \(x_i\) ,现在你要开一个新的商店,人们只会选择离他们最近的店铺.只有这个人群到你的商店的距离严格小于到其他商店的距离,这个人群才会来你的商店.你可以在任意位置开商店,问能吸引到的最大顾客数是多少?

\(\operatorname{Solution}\)

对于任意一个位置,一定只属于下面三种情况:

  1. 左边没有商店,右边有商店
  2. 左边有商店,右边也有商店
  3. 左边有商店,右边没有商店

首先,对于位置 \(x\) ,假设左边是没有商店的,不妨就可以假设有一个商店在负无穷远处.同理也可以假设右边没有商店的地方,有一个商店在正无穷远处.那么问题转化为了任意一个位置 \(x\) 两边都有商店的情况.

首先如果新商店在原商店的左边,那么原商店右边的店铺一定不会来新店铺,反之亦然.
因此只需要考虑两个商店之间的人群,求在这两个商店之间某一位置能吸引到的最大顾客数.

从这两个商店中间的第一个人群开始考虑,假设这个人群与左边的商店(设左边商店位置为 \(x_1\) )的距离是 \(l\) ,那么新开商店如果想吸引这个人群(设人群位置是 \(p_i\) ,位置最好取到 \(p_i+l\) ,设新开商店位置是 \(x_3\) ,那么\((x_1+x_3)/2 \sim (x_2+x_3)/2\) 之内的人群都可以被吸引.

然后通过挨个人群来遍历新开商店位置即可.
时间复杂度 \(\operatorname{O}(nlogn)\)

比赛总结

这场比赛总体过程还算顺利.本场比赛( \(SWERC\ 2021\) )可做的题不多,终榜时仅有五六道题算过的人比较多的,其他题目可能仅有个位数或者十几个人做出来.唯一遗憾的是队友的 \(L\) 最后没能调出来,感觉能过的希望还是蛮大的.

A

签到题.记录一下每个难度的最大值就可以了

F

签到题,队友写的一发过掉了.

J

队友写的,第一发 \(WA\) 了,可能有几个边界条件没控制好,写了一会 \(D\) 给队友机子改了一会再交了一发就 \(A\) 了.

D

横轴上有 \(n\) 个间隔 100m 的人群,还有一些店铺,要找一个新店铺最佳位置使得有尽量多的人到新店铺.
这题刚开始跟队友讨论发现 只需要枚举新店铺相对于人群的位置,新店铺一定开在人群的离人群最近的店铺的距离上.枚举这个位置,然后新店铺到下一个店铺的距离的一半以内的距离都是满足要求的.比赛时第一发光考虑了到后面一个店铺的一半的距离,没有考虑到前面店铺的距离,因此 \(WA\) 了一发.后面发现还需要控制一下边界,否则会越界.最后也是顺利 \(AC\).

L

队友想了一个很神奇的思路,建图然后跑bfs,想了想应该没什么问题.虽然调了很久一直 \(WA\) .

终榜4题结束,遗憾退场(虽然再给一个小时也不一定出 \(L\) ).

posted @ 2023-08-17 10:27  LZH_03  阅读(21)  评论(0编辑  收藏  举报