上一页 1 ··· 3 4 5 6 7 8 9 10 11 12 下一页
摘要: 因为D[i]表示i号节点到1号节点的最短路径,所以可以先以1为源点跑一边SPFA,预处理出每个点到1号节点的最短路。之后开始考虑所谓的“最短路径生成树”,在这棵生成树中有以下性质:当fa[i]==node时,必满足dist[node]+w(node,i)=dist[i],但是dist[node]+w 阅读全文
posted @ 2019-07-08 21:38 shao0320 阅读(230) 评论(0) 推荐(0)
摘要: 题目传送门 省选D2T3考板子可真是不多见呢。。。。~~~ 这题就是一个裸的树链剖分,对于每一个Add操作,维护从u至v的路径,对于每一个Query操作,询问以u为根的子树之和。如果不会树链剖分可以看我的往期博客,具体细节在代码之中就不多赘述了~ 下面给出参考代码: 1 #include<iostr 阅读全文
posted @ 2019-07-07 08:26 shao0320 阅读(194) 评论(0) 推荐(0)
摘要: 树链剖分用来解静态树上维护路径信息的问题,例如:给定一颗点带权的树,每次去修改某条路径上所有点的点权,或是求某条路径上的点权之和,当这棵树的形态为一条链时,这实际上就是一个区间修改求和的问题,可以用线段树等数据结构方便地求解。对于其他的情况,由于树的形态不变,因此树链剖分的策略是把这棵树恰当的剖分为 阅读全文
posted @ 2019-07-04 14:44 shao0320 阅读(242) 评论(0) 推荐(0)
摘要: 洛谷上的翻译是真的哲学♂♂♂ 非常van的题目传送门♂♂♂ 个人认为这题充其量也就是个蓝(nan)题,首先处理-1的情况,-1的情况是不等式组无解,按照差分约束的规则,无解说明出现了负环,先跑一遍以0为源点的SPFA判断有无负环即可。再来处理-2的情况,结果为-2就说明1号和n号节点不存在直接的或间 阅读全文
posted @ 2019-06-26 20:20 shao0320 阅读(241) 评论(0) 推荐(0)
摘要: 题目传送门 差分约束系统很棒的应用,首先运用前缀和的思想,令s[k]为0~k中被选出来数的个数,则s[b[i]]>=s[a[i]-1]+c,这样会有一个问题,那就是下标可能会出现负数,因此我们可以改变前缀和表示的方法,设s[k]为0~k-1中被选出来的数,则约束条件可以转化为:s[b[i]+1]-s 阅读全文
posted @ 2019-06-25 20:35 shao0320 阅读(161) 评论(0) 推荐(0)
摘要: 题目传送门 对于一个刚接触差分约束系统的OIer来说,这算是一道细节比较多,也比较难的题。首先就是这道题有5种不同的约束条件,对于条件1,3,5直接按照差分条件建边即可,条件2,4要先移项,再建边。之后再求单源最长路,好不容易做出来后你就会发现数据卡SPFA!!!!这里可以加两个小小的优化:1)当a 阅读全文
posted @ 2019-06-24 22:15 shao0320 阅读(185) 评论(0) 推荐(0)
摘要: 题目传送门 这道题需要解决的是区间求值和单点修改,可以用线段树求解,首先构造一颗[1,m]的“空树”(序列至多有m个数),即每个节点维护的信息均为0,新建一个变量sum表示序列中实际数的个数,每次修改第sum个节点,最后n个数就是[sum-n+1,sum],简单维护即可。 下面给出参考代码: 1 # 阅读全文
posted @ 2019-06-24 21:18 shao0320 阅读(118) 评论(0) 推荐(0)
摘要: 差分约束系统解决的是一个N元1次不等式求解的问题,其中每一个不等式都形如Xi-Xj<=Ck,其中Ck为常数。差分约束系统与最短路关系甚密,可以用最短路算法求解,即先对不等式进行移项操作,将不等式转化为Xi<=Xj+Ck,这正是求完单源最短路后应该满足的条件(在没有负环的情况下)。其中每一个变量可以看 阅读全文
posted @ 2019-06-24 21:09 shao0320 阅读(424) 评论(1) 推荐(1)
摘要: 题目传送门 评分:省选/NOI-,难度:普及+/提高 这题真的和RMQ没有半点关系,只需要一个裸的线段树,连pushdown都不需要,只需要两种操作:区间修改和区间求最小值,在回溯时加上标记即可,唯一有点思维含量的是对环的处理,如果左端点大于了右端点,就维护(l,n)(1,r),否则正常维护即可,不 阅读全文
posted @ 2019-06-22 13:49 shao0320 阅读(309) 评论(0) 推荐(0)
摘要: 题目传送门 解析:这道题本质上是求两点之间经过n条边的最短路,是一道快速幂的应用,只需把快速幂自乘的操作改成最短路边数*2,把快速幂乘答案的操作改成维护答案即可。 1 #include<iostream> 2 #include<cstdio> 3 #include<map> 4 #include<c 阅读全文
posted @ 2019-06-22 13:33 shao0320 阅读(226) 评论(0) 推荐(0)
上一页 1 ··· 3 4 5 6 7 8 9 10 11 12 下一页
****************************************** 页脚Html代码 ******************************************