用户工具

站点工具


2020-2021:teams:looking_up_at_the_starry_sky:icpc_north_western_european_regional_contest_2019_重现赛

比赛链接

2020.05.04ICPC North Western European Regional Contest 2019 重现赛 pro: 6/9/11 rk: 18/552

Problem A. Average Rank

题解:相当于计算每个人的排名和。某一个分数的人在某一段时间内排名是不变的。记录某个分数上一次排名变更的时间点,就可以在某个人排名改变时推算出当前的信息。

Problem B. Balanced Cut

不会

Problem C. Canvas Line

题解:优先选择可以夹两块布的位置。

可以直接贪心,当时跑了二分图匹配。

Problem D. Disposable Switches

题解:将每条边的时间改为$l+cv$最短路不变

经过K条边的一条路径的长度 $$ \sum l_i +Kcv $$ 经过K条边的最短路 $$ min[K]+Kcv $$

随着cv的改变,最短路经过的路径可能改变

只需要判断是否存在cv,使$min[K]+Kcv \le min[j]+jcv (j \ne K)$

则经过K条边的最短路是可能的,沿着最短路标记一下经过的点。

把long long传到int里,然后调了半天。

Problem E. Expeditious Cubing

注意卡精度

Problem F. Firetrucks Are Red

题解:并查集

Problem G. Gnoll Hypothesis

队友写的

Problem H. Height Profile

$$ \frac{h_i-h_j}{i-j} \ge g \Leftrightarrow (h_i-ig)-(h_j-jg) \ge 0 \ \ \ \ \ (i>j) $$ 令$a_i=h_i-ig$

最优解时一定有一个端点横坐标为整点

维护$a_i$的单调递减子序列,枚举右端点为整点,然后在子序列里二分找到对应的线段,求出符合条件的点。

把序列反转一下,取相反数,再做一遍。

变量写错调了半天。

Problem I. Inverted Deck

将序列排个序得到新序列,与原序列比较一下得到需要反转的区间。

一开始写了另一个做法,特殊情况没考虑到,WA了半天。

Problem K. Kitesurfing

不会

2020-2021/teams/looking_up_at_the_starry_sky/icpc_north_western_european_regional_contest_2019_重现赛.txt · 最后更改: 2020/05/15 23:14 由 zzy