摘要: 我们首先考虑一块石头高度变化对每个高度的查询的答案的影响,即我们要记录,对于每个高度的查询的答案所以要离散化高度(不然哪开的下数组啊)不难发现,一次变化的对于不同高度的影响,对于一段连续高度是相同的即一次修改操作,对于一段连续高度的答案,影响相同,满足区间修改性质就决定是你了,树状数组具体来说,考虑 阅读全文
posted @ 2018-10-21 09:57 Ivanovcraft 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 阅读理解题 。。。。。。 $Trie$后缀问题不好处理,我们把它转化为前缀问题,用字典树解决问题贪心容易想到,一个串的后缀要先于它插入对于一个串和其若干后缀串,容易想到,我们要先插入后缀串然后递归进入$size$最小的子串 注意求$size$要重构树,只保留关键点因为我太蒻了,并不会指针,所以提供一 阅读全文
posted @ 2018-10-20 17:41 Ivanovcraft 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 题外话:维护区间交集子集的小套路开两个树状数组,一个维护进入区间,一个维护退出区间$Query:$给定询问区间$l,r$和一些其他区间,求其他区间中与$[l,r]$交集非空的区间个数用上面维护的信息表示,就是$r$(含)前进入的区间个数$-l$(不含)前退出的区间个数这个题:我们可以把它抽象为,求区 阅读全文
posted @ 2018-10-16 16:52 Ivanovcraft 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 思路是覆盖子树,我们发现,农民想截住牛的最优策略是不断向上来尽可能地覆盖更大的子树我们想要尽早地覆盖一个子树,一个显然的贪心是在这个子树中选取深度最小的一个放农民如果我们在一个点放置了农民,那么其他点也会被覆盖,所有这个农民能够覆盖的叶子都不需要再放农民了抽象出来,对于每个叶节点,都有一个深度,我们 阅读全文
posted @ 2018-10-15 19:10 Ivanovcraft 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 考虑在一个部分串中加入字符使得最终构造的串回文子串最多的方案考虑简单情况,对于只含一种元素的串,我们要插入其他元素记原有元素为$a$,新加元素为$b$考虑$b$的最优插入位置原串$aaaa...aa$,插入$b$设$b$在串中的插入位置为$pos$,插入后,原本的回文串$[pos-i,pos+j]( 阅读全文
posted @ 2018-10-15 17:21 Ivanovcraft 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 题目要求解$a-(a\oplus x)-x=0$的解$x$的个数移项得$a-x=a\oplus x$$a$的二进制形式,应该是一个$01$串,异或的过程是不能影响到两个不同的位的,所以我们按位考虑如果这一位是$0$,那么$x$的这一位也应为$0$,使得异或后答案不会更大如果这一位是$1$,那么$x$ 阅读全文
posted @ 2018-10-15 16:57 Ivanovcraft 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 要让这个三角形合法,只需满足三角形不等式即$a+b>c$,设$c=max\left\{a,b,c\right\}$,上式转化为$c<a+b$如果已经满足,不需消耗代价否则消耗$c-a-b+1$的代价 阅读全文
posted @ 2018-10-15 16:45 Ivanovcraft 阅读(194) 评论(0) 推荐(1) 编辑
摘要: 还是二分答案,发现我的$check$函数不太一样,来水一发题解列一下式子$$\frac{sum-sum[l,r]}{n-(r-l+1)}<=ans$$乘过去$$sum-sum[l,r]<=ans*(n-r+l-1)$$即$$\sum_{i=1}^{l-1}+\sum_{i=r+1}^{n}<=ans 阅读全文
posted @ 2018-10-13 19:17 Ivanovcraft 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 二分查找水题记$sum[i]$为$d[i]$的前缀和数组枚举第一段区间的结尾$i$然后二分出$lower$_$bound(sum[n]-sum[i])$的位置$x$,如果$sum[x]$与$sum[n]-sum[i]$相等,且$x$大于$i$,更新答案 阅读全文
posted @ 2018-10-12 19:39 Ivanovcraft 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 看数据范围,然后果断邻接矩阵$Floyd$啊对于公路和铁路,各建一个图,分别跑最短路,然后取最大值即可 阅读全文
posted @ 2018-10-12 19:29 Ivanovcraft 阅读(283) 评论(0) 推荐(0) 编辑