「Summary」学科营题目集合
What we don’t know.
The Problem List
Title | Source | Link | Finished |
---|---|---|---|
补退选 | THUSC 2016 | loj2291 | True |
成绩单 | THUSC 2016 | loj2292 | True |
星露谷物语 | THUSC 2016 | loj2293 | |
大葱的神力 | THUWC 2017 | loj2288 | |
在美妙的数学王国中畅游 | THUWC 2017 | loj2289 | |
随机二分图 | THUWC 2017 | loj2290 | True |
巧克力 | THUSCH 2017 | loj2977 | True |
杜老师 | THUSCH 2017 | loj2978 | True |
换桌 | THUSCH 2017 | loj2979 | True |
大魔法师 | THUSCH 2017 | loj2980 | True |
如果奇迹有颜色 | THUSCH 2017 | loj2981 | |
宇宙广播 | THUSCH 2017 | loj2982 | |
Minimax | PKUWC 2018 | loj2537 | True |
Slay the Spire | PKUWC 2018 | loj2538 | |
斗地主 | PKUWC 2018 | loj2539 | |
随机算法 | PKUWC 2018 | loj2540 | True |
猎人杀 | PKUWC 2018 | loj2541 | |
随机游走 | PKUWC 2018 | loj2542 | True |
真实排名 | PKUSC 2018 | loj6432 | True |
最大前缀和 | PKUSC 2018 | loj6433 | True |
主斗地 | PKUSC 2018 | loj6434 | |
星际穿越 | PKUSC 2018 | loj6435 | True |
神仙的游戏 | PKUSC 2018 | loj6436 | |
PKUSC | PKUSC 2018 | loj6437 |
「THUSC 2016」补退选
观察到这个查询答案具有单调性,可以直接建出来可持久化 Trie,二分版本号查询是否满足要求即可。
Trie 上维护的信息是当前每个前缀出现次数和所有版本中每个前缀出现的最大次数(相当于维护了一个单调序列)。
「THUSC 2016」成绩单
发现
于是换一个方式去定义,定义
考虑在
- 和
一起取走, 。 - 枚举一个中间的
,把 一起取走 。
答案是
「THUSCH 2017」巧克力
随机化 /kk。一个叫 color coding 的神必算法。
首先有一个中位数二分的套路,如果
然后开始乱搞,将所有的颜色映射到
大概
「THUSCH 2017」大魔法师
直接矩阵乘法即可。
直接被卡常,有点无聊,需要把矩阵乘法里面的循环展开,以及取模优化。。。
「THUWC 2017」随机二分图
暴力都有点难想。
首先考虑如何建边,具体如下。
对于情况一,我们直接建边并把边的概率设为
对于情况二,我们建出两条单独的边,并把边的概率设为
对于情况三,仿照上面的做法,多建一条概率为
然后搜索可以有
发现
需要用 map
存状态,感性理解一下,复杂度
「THUSCH 2017」杜老师
很高妙,但是乱搞。
尤启发性的一点是这道题提供了另外一种统计乘积为完全平方数的子集的个数的方案。
具体来说,对于每一个数建一个向量 bitset
优化。但是复杂度在
可以发现
最后一步需要观察,当
最后得到了一个类似根号分治的做法。
「THUSCH 2017」换桌
首先建
「PKUWC2018」Minimax
以为。这是期望概率推式子高妙题,结果是个数据结构。
拆开算贡献,发现只需要算出来概率就可以了。定义
右儿子同理。
发现这个直接做是
其实这个式子已经没有办法化简了,解题的关键在于去掉一些没有意义的转移,因为题目保证了所有的权值不同,那么在往上算贡献的时候线段树有很多空节点,再注意到这个式子的贡献方式很优美,是区间求和,并且加上有合并两个儿子的操作,于是在线段树合并的时候顺便维护前后缀和即可。
「PKUWC2018」随机游走
综合性较强的好题。
需要会一点 min-max容斥
。写一个速通版本,成立的前提是满足全序关系且元素有可加减性。
全序关系
对于集合
,如果满足全序关系,则对于任意 满足。
反对称性:若且 ,则
传递性:若且 ,则
完全性:对于,一定有 或
于是拿到这道题来,设随机变量
套容斥公式得到
也就是
现在需要对于任意一个集合
后面这个式子是有技巧性的可以消除后效性,可以参考 here 。
拿到推出来的式子后可以
「PKUWC2018」随机算法
看到
把生成排列看成按顺序从小往大往序列里面插入元素,那么很自然地定义
「PKUWC2018」真实排名
非常容易,只需要查看对于每个数会产生贡献的数的个数即可,分类讨论一下这个数本身翻不翻倍然后组合数就可以了。
「PKUWC2018」最大前缀和
The End「Ô mon âme, n'aspire pas à la vie immortelle, mais épuise le champ du possible.」