csps模拟测试64
作者:互联网
题好难。。仨暴力。
T1:trade
对于DP加入大脸优化
反悔贪心。
首先就是对于用堆维护的贪心。
把之前没买也没卖以及可能要反悔的加入一个堆,对于当前点,查询有没有比他自己小的,如果有那么此时交易一定赚,
问题在于赚得够不够多,所以我们就可以把2个他自己插入堆,以供反悔,在也就是ai-aj+aj-ak然后我的中间点j就消掉了,
并且如果在以后如果用j,一定先用j反悔,在用j买入,因此不会多算j。
T2:sum
两个柿子,后一个差一点就推出来了,推出来就正解了。
$S_n^m=\sum \limits_{i=0}^m C_n^i$
首先它叫前缀和,对于前缀和一定有$S_n^m=S_n^{m-1}+C_n^m$它实现了单点移动m,
那有没有单点移动n的?
$S_{n-1}^m=\sum \limits_{i=0}^{m}C_{n-1}^i$
加起来,由组合数递推式得,$S_n^m=S_{n-1}^{m-1}+S_{n-1}^m$
然后发现两项之间有关系,
直接用单点移动m的代入即可。
实现了n,m的单点移动,莫队可以水过。
T3:building
额嗯嗯,这题叫啥呢。。。并查集+STL?
恩对调就完了
标签:单点,limits,sum,aj,csps,反悔,64,移动,模拟 来源: https://www.cnblogs.com/starsing/p/11648562.html