摘要:
[USACO18DEC]Balance Beam bk讲过的题还是不会 众所周知,期望经常会出现f[i]=a*f[i-1]+b*f[i+1]这样 可以高斯消元、设主元、k*x+b这种搞一搞。 但是,本题显然是:f[i]=max(w[i],a*f[i-1]+b*f[i+1])这种形式。 max很讨厌。 阅读全文
摘要:
CF704E Iron Man 经过不懈(抄题解)努力之后,终于AC了此题。 说起来很简单。 考虑一个链上的情况, 建立直角坐标系。 横坐标是t,纵坐标是距离链开头的距离d m个路径就是一个线段 那么能碰撞,当且仅当线段有交。 给一些线段的集合,求两两之间的第一个交点。 做法: 扫描线。 set维护 阅读全文
摘要:
https://loj.ac/problem/504 一类套路题. 首先这个玩意可以两个logn树套树做。。。。 naive地,把区间内的所有数拿出来放进堆里。不断取出。 太多了。 所以开始只保留那初始logn区间最小值,弹出之后再找出左右区间下一个 线段树维护最小值和最小值位置。 和超级钢琴,异或 阅读全文
摘要:
如果不断边,直接路径+,看边的权值。 这个相当于是区间加,单点查询 如果断边,很多路径变化了,就凉了。 考虑单点加,查询子树内部有没有包含所有的路径的一端。 考虑hash 给两端xor同一个随机值。 这样,子树没有出现或者出现两次都不合法,贡献都是0 出错概率就是每个点都是随机情况下,存在一个子集x 阅读全文
摘要:
CF446D DZY Loves Games 高斯消元好题 如果暴力地,令f[i][k]表示到i,有k条命的概率,就没法做了。 转化题意 生命取决于经过陷阱的个数 把这个看成一步 所以考虑从一个陷阱到另一个陷阱,不经过其他陷阱的概率p[i][j] 当然1出发到其他陷阱的概率也要得到。 然后相当于有一 阅读全文
摘要:
https://vjudge.net/problem/TopCoder-15135 之前做过:本质不同的回文子序列个数 本题:位置不同即为不同。 如果还是设$f[l][r]$表示$l$,$r$结尾,就难受了。转移就已经是$O(n^2)$了 所以,$f[l][r]$表示,$[l,r]$的回文子序列个数 阅读全文
摘要:
经典题。 经典差分约束模型。 但是 显然这个总长是有上下界的。 直接二分总长,判断有没有负环 如果没有负环好办,有负环就不知道怎么偏了。 因为没有单调性! (如果所有没有单调性的函数图像,都知道往哪里走更优, 岂不是全都可以二分了 ) 但是本题特殊在于,至少还是个区间! 二分左右端点。 负环记录k* 阅读全文
摘要:
【UR #2】跳蚤公路 参照yjc方法。也就是地铁环线那个题。 求每个点不在负环内的x的取值范围。然后所有1到j能到i的j的范围取交。得到答案。 每个边形如kx+b的直线,每个环也是 每个点不在负环内的x取值范围是区间, 两次二分, 第一次二分区间左端点,第二次右端点。 如果没有负环,左端点往左偏, 阅读全文
摘要:
[NOI2017]整数 压位+线段树 unsigned long long压64位 加法为例。 a拆成两半加入。处理进位 往后进位? 二分到第一个0位置,变成1,途中的都变成0 线段树二分+区间赋值。 维护区间有没有0 减法同理。 注意: 1.只要区间里面有更新,就要pushup! 2.叶子节点加减 阅读全文