<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Roll_Keyboard的博客]]></title><description><![CDATA[蒟蒻的博客，主要写题解，如果能帮到你真是太好了]]></description><link>https://blog.youkuaiyun.com/Roll_Keyboard</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Roll_Keyboard]]></copyright><item><title><![CDATA[网络流题目合集]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/101686834</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/101686834</guid><author>Roll_Keyboard</author><pubDate>Tue, 29 Oct 2019 13:31:52 +0800</pubDate><description><![CDATA[属实狠活
HDU 2883 kebab还是区间k重覆盖的变形，然而每想到
就这？
HDU 3315 My Brute
HDU 3947 River Problem 区间k重覆盖的变形
拉了

]]></description><category></category></item><item><title><![CDATA[线段树合并，分裂和分治]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/100981334</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/100981334</guid><author>Roll_Keyboard</author><pubDate>Wed, 18 Sep 2019 14:35:17 +0800</pubDate><description><![CDATA[先说线段树合并
如果你会写主席树或者平时使用结构题那种线段树，那么理解起来就毫无压力。
首先从字面上理解，如果要合并两个线段树，用最暴力的方法，就是dfs一次，然后将信息合并到一颗线段树上，那么时间复杂度就取决于不同的节点数（因为如果是只有一棵线段树有的信息，直接不管即可）。
如果要合并很多个线段树，每个线段树只存了一点信息，那么自然不可能开满点，需要动态开点。这个就和主席树一样开即可。
解决了开...]]></description><category></category></item><item><title><![CDATA[从零开始的几何学习]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/97622772</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/97622772</guid><author>Roll_Keyboard</author><pubDate>Tue, 17 Sep 2019 15:39:25 +0800</pubDate><description><![CDATA[概念篇
点/向量:同样使用两个值表示,A向量表示为A→\overrightarrow{A}A
线:两个点实现
点积:x1x2+y1y2x_1x_2+y_1y_2x1​x2​+y1​y2​，A→\overrightarrow{A}A⋅B→=∣A∣⋅∣B∣⋅cosΘ\cdot\overrightarrow{B}=|A|\cdot|B|\cdot cos
\Theta⋅B=∣A∣⋅∣B∣⋅cosΘ
叉积...]]></description><category></category></item><item><title><![CDATA[b2324/luogu4542 [ZJOI2011]营救皮卡丘]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/96138025</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/96138025</guid><author>Roll_Keyboard</author><pubDate>Tue, 16 Jul 2019 15:30:50 +0800</pubDate><description><![CDATA[题意：
&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;中文题
思路：
首先，如果要探寻新的点，假设i-&gt;j，一定是走的路径上比他们小的点过去的，并且在这个条件下，一定是走的最短路。这个过程可以使用floyd完成。对于i&lt;j，假如能够到达，那么就建立一条长度为跑完floyd的dist[i][j]。
那么现在问题就变成了最多使用k条路径覆盖整个dag，并且要求花...]]></description><category></category></item><item><title><![CDATA[有趣题目和认知合集（持续更新）]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/84142632</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/84142632</guid><author>Roll_Keyboard</author><pubDate>Mon, 01 Jul 2019 19:33:46 +0800</pubDate><description><![CDATA[好久没写博客了，写个树上启发式合并水水吧
E. Blood Cousins
森林中求某个点深度为x的孩子个数
D. Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths
和这个题好像，不过一个是统计点，一个统计子树。导致一个是点分治一个启发式合并

...]]></description><category></category></item><item><title><![CDATA[luoguP3613/BZOJ4811 睡觉困难综合征/由乃的OJ]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/89883611</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/89883611</guid><author>Roll_Keyboard</author><pubDate>Mon, 06 May 2019 17:34:41 +0800</pubDate><description><![CDATA[addwddaw

]]></description><category></category></item><item><title><![CDATA[网络流24题]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/88883610</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/88883610</guid><author>Roll_Keyboard</author><pubDate>Thu, 18 Apr 2019 10:38:06 +0800</pubDate><description><![CDATA[飞行员配对方案问题
二分图最大匹配+输出路径，简单题
负载平衡问题
费用流，让每个数都减去平均数，然后正数连源点，负数连汇点，相邻的连边，然后跑一次就行了，这里能够发现，无向图跑费用流要建两次边，而最大流不需要

...]]></description><category></category></item><item><title><![CDATA[Codeforces Daily (Round 370-410)]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81432714</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81432714</guid><author>Roll_Keyboard</author><pubDate>Thu, 11 Apr 2019 19:52:11 +0800</pubDate><description><![CDATA[—————————————————————————-



时间:8.1     &amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;am]]></description><category></category></item><item><title><![CDATA[CodeChef QCHEF Chef and Problems （分块）]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/82890430</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/82890430</guid><author>Roll_Keyboard</author><pubDate>Fri, 28 Sep 2018 21:39:51 +0800</pubDate><description><![CDATA[题意：
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 一个数列，m次查询，每次查询[L,R]中，一样的数字的最远距离
思路：
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 分块，对于每一个块，维护fi[i][j] (第j个块，i出现最前的位置),la[i][j] （第j个块，i的出现最后的位置），再维护ans[i][j]（第i个块到第j个...]]></description><category></category></item><item><title><![CDATA[HDU 4776 （字典树）]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/82865749</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/82865749</guid><author>Roll_Keyboard</author><pubDate>Thu, 27 Sep 2018 13:21:03 +0800</pubDate><description><![CDATA[题意：
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp; 一棵树，有边权，路径价值为所有边权异或的值，m次查询，每次查询第k大的路径的价值
###思路：
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp; 从1dfs出其他点到1的路径的值，我们发现任意一条路径可以]]></description><category></category></item><item><title><![CDATA[CodeChef VLB Vasya and Little Bear (树上莫队)]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/82716996</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/82716996</guid><author>Roll_Keyboard</author><pubDate>Sun, 16 Sep 2018 00:24:23 +0800</pubDate><description><![CDATA[#include&amp;amp;amp;lt;bits/stdc++.h&amp;amp;amp;gt;
using namespace std;
const int N = 100100;

stack&amp;amp;amp;lt;int&amp;amp;amp;gt; s; //分块时需要
int blocks,nowblo;//块大小,当前处于哪个块
int n,m;//节点数，问题数
int to[N][20],depth[N];//LCA
int block[N];
long ...]]></description><category></category></item><item><title><![CDATA[牛客多校训练（第一场）H-Longest Path(点分治+李超树)]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81198150</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81198150</guid><author>Roll_Keyboard</author><pubDate>Wed, 25 Jul 2018 10:45:51 +0800</pubDate><description><![CDATA[题意：

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 一颗有边权的树，对于一条路径(u,v)，假设经过的边权为e1,e2,e3,...efe1,e2,e3,...efe_1,e_2,e_3,...e_f，则该路径权值cal(u,v)为(e2−e1)2+(e3−e2)2+...+（ef−ef−1)2(e2−e1)2+(e3−e2)2+...+（ef−ef−1)2(e_...]]></description><category></category></item><item><title><![CDATA[洛谷P4097 bzoj3615 [HEOI2013]Segment(李超树)]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81192841</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81192841</guid><author>Roll_Keyboard</author><pubDate>Tue, 24 Jul 2018 22:32:06 +0800</pubDate><description><![CDATA[题意：

&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp; 两种操作，插入一个线段，或询问x=x0x=x0x=x_0时最大y对应的线段编号

思路：

&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;刚刚学了李超树就来A一下板子题，比起之前的题多了很多细节， 

错误]]></description><category></category></item><item><title><![CDATA[李超树学习笔记]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81127266</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81127266</guid><author>Roll_Keyboard</author><pubDate>Tue, 24 Jul 2018 15:31:40 +0800</pubDate><description><![CDATA[&amp;amp;amp;amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;amp;amp;amp;nbsp; &amp;amp;amp;amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;amp;amp;amp;nbsp; 牛客多校出了这样一道题，一颗有边权的树，对于一条路径]]></description><category></category></item><item><title><![CDATA[spoj GSS4 Can you answer these queries IV （线段树）]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81185627</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81185627</guid><author>Roll_Keyboard</author><pubDate>Tue, 24 Jul 2018 15:30:17 +0800</pubDate><description><![CDATA[题意：



思路：

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 套路题，因为在根号几次以后，继续根号就没有意义了，利用这一点就能AC了

错误及反思：



代码：

#include&amp;lt;bits/stdc++.h&amp;gt;
using namespace std;
#define lson l,m,rt&amp;lt;&amp;lt;1
#define rson m+1,r...]]></description><category></category></item><item><title><![CDATA[bzoj 1018 堵塞的交通traffic (线段树)]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81185535</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81185535</guid><author>Roll_Keyboard</author><pubDate>Tue, 24 Jul 2018 15:26:51 +0800</pubDate><description><![CDATA[题意：

思路：

参考博客：https://www.cnblogs.com/MashiroSky/p/5973686.html 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 非常非常难写的线段树，不仅难想还难写。 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 首先，这个线段树维护的是什么，是该区域四个顶点的连通性 
 
&amp;nbsp;...]]></description><category></category></item><item><title><![CDATA[Codeforces 85D. Sum of Medians (线段树)]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81135064</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81135064</guid><author>Roll_Keyboard</author><pubDate>Fri, 20 Jul 2018 16:45:41 +0800</pubDate><description><![CDATA[题意：

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 三种操作,1.加入一个数,2,删除一个数,3,询问经过排序以后，所有下标mod5mod5mod5余3的数的和

思路：

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 注意到，当我们加入一个数以后，会让所有后面的数后移一位，删除会使得后面全部前移一位，每次移动都使得下标变化1，所以我...]]></description><category></category></item><item><title><![CDATA[bzoj 1103 大都市meg (dfs序+线段树)]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81131319</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81131319</guid><author>Roll_Keyboard</author><pubDate>Fri, 20 Jul 2018 14:13:51 +0800</pubDate><description><![CDATA[题意：

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;一颗树，每条边权是1，两种操作，一种查询x到根的距离，一种把某边改为0

思路：

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 对于一个边变了，那么影响的就是子树，所以dfs序+线段树就行了，这题对于时间要求很低，vector存边，每次暴力找答案也能A

错误及反思：



代码：
...]]></description><category></category></item><item><title><![CDATA[Codeforces Round #104 (Div. 1) E. Lucky Queries (线段树)]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81130761</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81130761</guid><author>Roll_Keyboard</author><pubDate>Fri, 20 Jul 2018 13:41:01 +0800</pubDate><description><![CDATA[题意：

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 长度为n的47串，两种操作，一种是区间变换，即4变7，7变4，一种是询问，问最长的非严格递增子序列长度

思路：

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 线段树维护即可,47可以抽象成01串,变换就是异或，存储全0串最长长度，全1串最长长度，000..111串长度，111…0...]]></description><category></category></item><item><title><![CDATA[treap入门题目集合（附模板）]]></title><link>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81045891</link><guid>https://blog.youkuaiyun.com/Roll_Keyboard/article/details/81045891</guid><author>Roll_Keyboard</author><pubDate>Sat, 14 Jul 2018 17:48:37 +0800</pubDate><description><![CDATA[POJ 3481 
HDU 5877 
BZOJ 1208 
BZOJ 3224 Tyvj 1728 
BZOJ 1588 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 这些题目都很裸，套套模板就能A，所以就放一起了，treap=tree+heap，让数值维持二叉树性质，用随机值维护堆性质（用这个维护树的平衡）


const int N = 100010;
str...]]></description><category></category></item></channel></rss>