摘要: 题解 就是线段树维护一下转移矩阵 分成两种情况,一种是前面有两个联通块,一种是前面有一个联通块 从一个联通块转移到一个联通块 也就是新加一列的三个边选其中两条即可 从一个联通块转移到两个联通块 不连竖着的那条边,横着的两条边转移一条短的即可 从两个联通块转移到一个联通块 新加的一列三个边全连上 从两 阅读全文
posted @ 2018-12-19 15:46 sigongzi 阅读(315) 评论(0) 推荐(0) 编辑
摘要: 题解 直接二分然后建图跑网络流看看是否合法即可 就是源点向每个激光武器连一条二分到的时间×激光武器每秒攻击值的边 每个激光武器向能攻击的装甲连一条边 每个装甲向汇点连一条装甲值的边 代码 cpp include define fi first define se second define pii 阅读全文
posted @ 2018-12-19 14:31 sigongzi 阅读(407) 评论(0) 推荐(0) 编辑
摘要: 题解 还以为是啥毒瘤题 然后是个搜索题 复杂度算起来挺大 然后跑起来就连0.1ms不到= = 就是从大到小进行每种操作,搜出来一种操作就乘上一个操作数的阶乘就行 如果现在进行的操作操作$2^i$那么大的段,那么就把序列分成每段$2^{i + 1}$长,看看每段是否连续 如果都连续这次操作就跳过 如果 阅读全文
posted @ 2018-12-19 13:43 sigongzi 阅读(371) 评论(0) 推荐(0) 编辑
摘要: 题解 事实上是个分块暴力 就是跳跃长度大于$\sqrt{n}$的狗最多有$\sqrt{n}$个位置 剩下跳跃长度小于$\sqrt{n}$的暴力记录 也就是两个$dis$数组 $dis[0][i][j]$表示第$i$个位置有跳跃长度为$j$的狗 $dis[1][i][j]$表示第$i$只狗在自己的第$ 阅读全文
posted @ 2018-12-19 09:16 sigongzi 阅读(386) 评论(0) 推荐(0) 编辑