Educational Codeforces Round 117 (Rated for Div. 2)
实验室写代码比宿舍写代码爽多了捏, 虽然还是没能上大分QAQ
solve 4/7
A:
直接构造个中点就行, 我是根据奇数偶数分类构造了中点
B:
从n/2+1~n中从大到小挑n/2-1个数来陪a, 从1~n/2中从小到大挑n/2-1个数来陪b,
然后判断序列是否合法就可以了
C:
二分答案一下
D:
(a, b)->(a, a-b)->(a-b, b) -> (a-2b, b)...
可以发现有效的数字是, a, b, a-b, a-2b,…
也就是更相减损...但是这样会TLE, 所以用辗转相除法, 在辗转相除的时候判断一下x能否出现即可
能出现当且仅当a-kb=x a>=b
补题:1/3
E:
交慢了没交上
我们考虑新增一本书的影响
设原来的期望是E, 已经挑了n本书, 有t个人要看这第n+1本书, 而且他们看到这本书的概率和为P=$\frac{\sum k}{n+1}$, 因为每人的期望是P*1, 所以他们看到这本书的期望也是P
那么这本书对原期望的影响为$E=\frac{nE+P}{n+1}$
显然这个P得比E大...
于是可以贪心, 让$\sum k$大的书先选, 然后枚举答案j, 每个人的k=min(k, j)
可以发现答案很小, 因为k<=20, 如果j>20 势必会让期望减小