摘要: 首先要计算出每一条路最早开始的那一天,然后最晚结束的那一天。 这些天之间这条边都必须$open$,然后就变成一个线段树区间$+val$的问题了,最后询问一个每个点的$val$是多少。 注意:数据中有$ai>bi$的情况。 阅读全文
posted @ 2016-08-19 18:37 Fighting_Heart 阅读(138) 评论(0) 推荐(0)
摘要: 二分t+最大权闭合图。 很显然二分那个t作为limit。每一个limit下,有一些边不能用了,然后要知道这种情况下怎么选点获得的价值最大。 这么想:一个shop想获得收益,就必须选择某一些plant,问题就转化成了最大权闭合图。 阅读全文
posted @ 2016-08-19 18:35 Fighting_Heart 阅读(172) 评论(0) 推荐(0)
摘要: 公式题。 阅读全文
posted @ 2016-08-19 18:33 Fighting_Heart 阅读(151) 评论(0) 推荐(0)
摘要: 因为原序列是排列好了的,那么只要看一下给出的两个区间相交的情况,然后分类讨论一下,O(1)输出。 阅读全文
posted @ 2016-08-19 18:32 Fighting_Heart 阅读(152) 评论(0) 推荐(0)
摘要: 处理出1-99的,之后的加上多少hundred和and即可。整百和一千的时候注意一下。 阅读全文
posted @ 2016-08-19 18:31 Fighting_Heart 阅读(172) 评论(0) 推荐(0)
摘要: 扫描线,树状数组求和。 横着的线的两个端点作为插入和删除,竖着的线作为询问。 遇到横着的线的左端点,那么那个位置+1, 遇到竖着的线,询问竖着那一段区间和是多少,区间和就是这条线对答案做出的贡献, 遇到横着的线的右端点,那么那个位置-1。 阅读全文
posted @ 2016-08-19 18:30 Fighting_Heart 阅读(146) 评论(0) 推荐(0)
摘要: 用线段树可以算出序列。然后o(1)询问。 阅读全文
posted @ 2016-08-19 18:28 Fighting_Heart 阅读(168) 评论(0) 推荐(0)
摘要: $dp$,矩阵加速。 设$dp[i][j][0]$表示:长度为$i$的两个字符串,之前还未出现过长度为$m$相同的,目前为止最后$j$个是相同的。 设$dp[i][j][1]$表示:长度为$i$的两个字符串,之前已经出现过长度为$m$相同的,目前为止最后$j$个是相同的。 递推式很容易写,$n$有点 阅读全文
posted @ 2016-08-19 18:26 Fighting_Heart 阅读(263) 评论(0) 推荐(0)
摘要: 树形dp。 先dfs一次处理子树上的最优解,记录一下回到这个点和不回到这个点的最优解。 然后从上到下可以推出所有答案。细节较多,很容易写错。 阅读全文
posted @ 2016-08-19 07:10 Fighting_Heart 阅读(289) 评论(0) 推荐(0)