2020.07.16【NOIP普及组】模拟赛C组1 总结

2020.07.16 2020.07.16 2020.07.16 N O I P NOIP NOIP普及组】模拟赛 C C C 1 1 1 总结

这次考试我考了 170 170 170分,很差,才 26 26 26名。
本来是可以考 250 250 250分的,第一题的快读打错了。

第一题:排名

解题方法

这道题目的方法是排序。
题目很容易理解。
因为数小,所以用桶排就行了。
最后判断哪些数小于等于小 k k k的分数就行了。
排序复杂度为 O ( n + max ⁡ i = 1 n x i ) \begin{aligned}O(n+\max_{i=1}^n{x_i})\end{aligned} O(n+i=1maxnxi)

得分情况

比赛时 20 20 20分。

第二题:简单游戏

解题方法

这道题目是数学。
直接找规律吧。

得分情况

比赛时满分。

第三题:危险系数

解题方法

这道题目是贪心。
我们知道最后一个人的危险系数是 ∑ i = 1 n w i − w n − s n \begin{aligned}\sum_{i=1}^{n}{w_i}-w_n-s_n\end{aligned} i=1nwiwnsn,也就是 ∑ i = 1 n w i − ( w n + s n ) \begin{aligned}\sum_{i=1}^{n}{w_i}-(w_n+s_n)\end{aligned} i=1nwi(wn+sn)
因为 ∑ i = 1 n w i \begin{aligned}\sum_{i=1}^{n}{w_i}\end{aligned} i=1nwi是一定的,所以我们只用看 w n + s n w_n+s_n wn+sn就行了,满足它们最大即可。
因此我们按 w n + s n w_n+s_n wn+sn从大到小排序,然后贪心选择即可。
时间复杂度为 O ( n log ⁡ 2 n ) 。 O(n\log_{2}^{n})。 O(nlog2n)

得分情况

比赛时 40 40 40分。

第四题: W I N G WING WING

解题方法

这道题目是标记数组。
我们设 a i , j a_{i,j} ai,j表示第 i i i种字符在第 j j j个位置的答案。
分两种情况:

1 1 1

我们只要发现这个字符串的某个字符的位置的数组 a a a 0 0 0,就说明没有出现过,输出 − 1 -1 1
否则就取答案最大的——因为必须满足所有的字符。

0 0 0

我们看一下这一位是否是的 a a a 0 0 0,如果为 0 0 0,就更新。
否则不更新。

总的时间复杂度为 O ( n c ) O(nc) O(nc)

得分情况

比赛时 10 10 10分。

你可能感兴趣的:(比赛总结)