用户工具

站点工具


2020-2021:teams:farmer_john:jjleo:educational_codeforces_round_79_rated_for_div._2_virtual_participation

目录

A B C D E F
+ + + + O

rank:696

A

  • 题意:给出三种颜色物品的数量,是否存在一个排列使得相邻颜色都不同。
  • 题解:只要数量少的两种颜色可以插空到数量最多的一种颜色中即可,即$x+y>=z-1$。

B

  • 题意:$n$个不同长度的诗,最多可以跳过一首诗的情况下,按顺序读长度$s$,最多能读完几首诗。
  • 题解:跳过的诗只可能是能读完里面的最长的一首和读不完的第一首,或者不跳,枚举一下即可。

C

  • 题意:给定一个栈,按照表上的顺序依次取出物品,每次取出一个物品需要将它上面的物品弹出,然后将他取出,然后再放回的过程中的顺序可以任意调整。如果一个物品上面有$k$个物品,那么取出它需要耗费时间$2k+1$,问照表上的顺序依次取出物品最少需要耗费多长时间。
  • 题解:我们维护目前取出物品里面最靠下的物品的位置,每次放回保证在这之上的物品都是按照表上顺序摆放的,取出时上面没有物品。模拟即可。

D

  • 题意:概率题,分步操作,每一步对数个物品都是等概率。
  • 题解:注意每一步都是等概率,因此如果第一步物品数量相等,第二部物品数量不等,那么概率是不同的,因为没注意到这个样例好久没过。

E

  • 题意:
  • 题解:

F

  • 题意:给出一个长度为$n$的$01$串,每次操作可以将任意一个长度为$l$的区间全变为$0$或全变为$1$,进行$k$次操作,求操作完成后$min(0 \text{的数量}, 1 \text{的数量})$的最小值。$(1 \le n, k, l \le 10^6, l \le n)$
  • 题解:可以发现要么每次都变$0$,要么每次都变$1$,两种都试一下即可。以变$0$为例,设$f(x)$为$x$次操作后最多的$0$的数量,可以发现这个函数是个上凸的,因此可以wqs二分。设$dp[i]$为到第$i$位时$0$数量最多的状态,每次从$dp[i-l]$转移一下即可。需要注意的是,这样会漏掉交叉覆盖的情况,我们只需要对所有$i < l$的$dp[i]$赋一个通过一次操作将$1,2..i$全变为$0$的操作即可解决这个问题,相当于后面转移过来的时候使用了两次交集的覆盖。
2020-2021/teams/farmer_john/jjleo/educational_codeforces_round_79_rated_for_div._2_virtual_participation.txt · 最后更改: 2020/06/25 23:05 由 jjleo