<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[huzujun的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/huzujun</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; huzujun]]></copyright><item><title><![CDATA[kmp深入解析及应用]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/82421326</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/82421326</guid><author>huzujun</author><pubDate>Wed, 05 Sep 2018 12:04:32 +0800</pubDate><description><![CDATA[这个算法用来干嘛

对于一个模板串M和一个子串S,n=|M|,m=|S|。

定义tend[i]为一个最大的k使得S[1..k]=M[i-k+1..i]。 

也就是说M从第i位开始往前能与S的前缀最大匹配的长度。

M= a a b b a a b a a b a

S= a a b a a b b

如上例 tend[7]=3

KMP算法就是在线性的时间复杂度内计算tend[1..n]。

...]]></description><category></category></item><item><title><![CDATA[博客迁移]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/82156536</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/82156536</guid><author>huzujun</author><pubDate>Tue, 28 Aug 2018 23:56:32 +0800</pubDate><description><![CDATA[想告别过去，特此迁移到 https://huzujun.github.io/]]></description><category></category></item><item><title><![CDATA[一维及二维数状数组模板]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/81477982</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/81477982</guid><author>huzujun</author><pubDate>Tue, 07 Aug 2018 11:16:22 +0800</pubDate><description><![CDATA[以前看树状数组总觉得很难，到现在看回来其实本质不过是一个简单的高校维护前缀和的小工具，也不必掌握差分，区间修改老老实实用线段数会比较直观。  
奉上我的数状数组板子

poj 2155  http://poj.org/problem?id=2155



#include &amp;amp;lt;bits/stdc++.h&amp;amp;gt;
#define rep(i, a, b) for (int i=a; i&amp;amp;lt;=...]]></description><category></category></item><item><title><![CDATA[acm实用拓展知识总结]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/81451207</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/81451207</guid><author>huzujun</author><pubDate>Mon, 06 Aug 2018 11:20:47 +0800</pubDate><description><![CDATA[IO



long double %Lf
unsigned long long %llu
unsigned int %u 

char s[MAX];
scanf(&quot; %[^\n]&quot;, s); //遇到回车结束（读一整行）
scanf(&quot; %[^ ]&quot;, s); //遇到空格结束

ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
ssc...]]></description><category></category></item><item><title><![CDATA[splay模板（功能最全）]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/81394092</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/81394092</guid><author>huzujun</author><pubDate>Fri, 03 Aug 2018 20:38:27 +0800</pubDate><description><![CDATA[回想起来splay大概是高中时的噩梦吧，手敲splay的确挑战太大了，不过到了acm时期，其实应该是不用惧怕splay的，把板子准备好就问题不大。

poj3580 
    虽然不是最简单的题，但是可以作为板子题 
    https://vjudge.net/problem/POJ-3580

题目大意：
要求实现一种数据结构，支持对一个数字序列的 6 种操作：
ADD x y val：第 x...]]></description><category></category></item><item><title><![CDATA[三分算法]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/81187455</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/81187455</guid><author>huzujun</author><pubDate>Tue, 24 Jul 2018 16:34:36 +0800</pubDate><description><![CDATA[类似于二分查找，三分搜索法也是比较常用的基于分治思想的高效查找方法。但是和二分不同，二分只适用于单调函数，三分用于单峰函数



三分搜索的实现主要是判断midl和midr所在值的大小。以凸函数为例（凹函数类似，只是判mid大小的时候保留小的即可（其实也是保留离极值最近的mid）），先以left和right为端点计算出它们的中点midl，然后再以midl和right为端点计算出它们的中点midr，...]]></description><category></category></item><item><title><![CDATA[2018再次上路]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/81100568</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/81100568</guid><author>huzujun</author><pubDate>Wed, 18 Jul 2018 16:32:33 +0800</pubDate><description><![CDATA[2015年07月20日 12:25:26发布的博文 
https://blog.youkuaiyun.com/huzujun/article/details/46966619

挺感慨的， 现在2018年7月18日，刚好过去了三年

这三年间发生了太多，别的不说吧，就拿oi来说，我觉得那时候还是没有好好把握机会，没有真的一心一意的训练，可能打了太多游戏，也可能是心太散，或者是的确思维不够，也有运气因素。 
但...]]></description><category></category></item><item><title><![CDATA[双连通分量 总结及例题]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/81086496</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/81086496</guid><author>huzujun</author><pubDate>Wed, 18 Jul 2018 16:24:13 +0800</pubDate><description><![CDATA[点双连通和边双连通


连通的概念：在无向图中，所有点能互相到达
连通分量：互相联通的子图
点双连通：删掉一个点之后，图仍联通
变双连通：删掉一条边之后，图仍联通


tarjan 算法：

该算法是R.Tarjan发明的。对图深度优先搜索， dfn[i]为第i个结点在搜索树中的深度，low[i]为第i个结点的子树的所有儿子连接到的最上面的结点层数。根据定义，则有：

Low(u)=Min
{
 ...]]></description><category></category></item><item><title><![CDATA[洛谷1007 独木桥]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/49474765</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/49474765</guid><author>huzujun</author><pubDate>Wed, 28 Oct 2015 21:35:28 +0800</pubDate><description><![CDATA[本题地址： http://www.luogu.org/problem/show?pid=1007题目背景 
战争已经进入到紧要时间。你是运输小队长，正在率领运输部队向前线运送物资。运输任务像做题一样的无聊。你希望找些刺激，于是命令你的士兵们到前方的一座独木桥上欣赏风景，而你留在桥下欣赏士兵们。士兵们十分愤怒，因为这座独木桥十分狭窄，只能容纳一个人通过。假如有两个人相向而行在桥上相遇，那么他们两个人将]]></description><category></category></item><item><title><![CDATA[POJ 3784 Running Median 动态求中位数 堆]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/49474355</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/49474355</guid><author>huzujun</author><pubDate>Wed, 28 Oct 2015 21:07:39 +0800</pubDate><description><![CDATA[http://poj.org/problem?id=3784题意。 
多组数据，对于每组数据 
输入若干个数，对第k个输入，如果k为奇数，则输出前k个数的中位数那么这就是动态求中位数了 
实现的思路也比较简洁和这题类似：http://blog.youkuaiyun.com/huzujun/article/details/49470135 
都是用到双堆的思想 
用两个堆， 大顶堆和小顶堆 
每次输入一个数，如果]]></description><category></category></item><item><title><![CDATA[洛谷1801 黑匣子_NOI导刊2010提高（06）  【好题】]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/49470135</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/49470135</guid><author>huzujun</author><pubDate>Wed, 28 Oct 2015 16:11:13 +0800</pubDate><description><![CDATA[洛谷1801 黑匣子_NOI导刊2010提高（06） 
本题地址： http://www.luogu.org/problem/show?pid=1801题目描述 
Black Box是一种原始的数据库。它可以储存一个整数数组，还有一个特别的变量i。最开始的时候Black Box是空的．而i等于0。这个Black Box要处理一串命令。 
命令只有两种： 
ADD(x):把x元素放进BlackBox;]]></description><category></category></item><item><title><![CDATA[1004. Sightseeing Trip 最小环]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/48053377</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/48053377</guid><author>huzujun</author><pubDate>Fri, 28 Aug 2015 15:46:24 +0800</pubDate><description><![CDATA[http://acm.timus.ru/problem.aspx?space=1&num=1004 
Sightseeing trip 观光旅游 
BackgroundThere is a travel agency in Adelton town on Zanzibar island. It has decided to offer its clients, besides many other]]></description><category></category></item><item><title><![CDATA[ural 1008 Image Encoding]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/48037057</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/48037057</guid><author>huzujun</author><pubDate>Thu, 27 Aug 2015 22:35:38 +0800</pubDate><description><![CDATA[http://acm.timus.ru/problem.aspx?space=1&num=1008 
题意：一个01信号串在经过某通道的时候会有如下几种可能的变化（1）不变 
（2）一个（仅一个）0变成1 
（3）在某个位置删掉一个（仅一个）符号 
（4）在某个位置增加一个（仅一个）符号并且原信号串必须满足 符号为1的位置和 模 (len+1) 为 0。例如1010，符号为1的位置有1和3，加起来等]]></description><category></category></item><item><title><![CDATA[ural 1003 Parity 并查集]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/48028441</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/48028441</guid><author>huzujun</author><pubDate>Thu, 27 Aug 2015 15:29:55 +0800</pubDate><description><![CDATA[http://acm.timus.ru/problem.aspx?space=1&num=1003 
1003. Parity 
Time limit: 2.0 second 
Memory limit: 64 MB 
Now and then you play the following game with your friend. Your friend writes down a sequen]]></description><category></category></item><item><title><![CDATA[ural 1002 Phone Numbers 字典树+dp]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/48023223</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/48023223</guid><author>huzujun</author><pubDate>Thu, 27 Aug 2015 10:06:44 +0800</pubDate><description><![CDATA[http://acm.timus.ru/problem.aspx?space=1&num=1003 
题意：给定一串数字，问这串数字可能代表的单词，若存在多个可能，输出单词数最少的情况，若还是相同输出任意符合的单词。数字转换规则就是根据手机的按键规则。题解：我们将所有单词转换成数字，然后保存到字典树中。然后开始dp给定的数字串,dp[i]表示从i开始到最后的数字串最少需要多少个单词构成。dp[i]=]]></description><category></category></item><item><title><![CDATA[UVA 10391 Compound Words]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/47958765</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/47958765</guid><author>huzujun</author><pubDate>Mon, 24 Aug 2015 21:40:00 +0800</pubDate><description><![CDATA[http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=19793 
You are to nd all the two-word compound words in a dictionary. A two-word compound word is a 
word in the dictionary that is the conc]]></description><category></category></item><item><title><![CDATA[poj1823 - hotel]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/47951091</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/47951091</guid><author>huzujun</author><pubDate>Mon, 24 Aug 2015 14:53:44 +0800</pubDate><description><![CDATA[http://poj.org/problem?id=1823 
Hotel 
Time Limit: 5000MS      Memory Limit: 30000K 
Total Submissions: 2389     Accepted: 1044 
DescriptionThe “Informatics” hotel is one of the most luxurious hotels f]]></description><category></category></item><item><title><![CDATA[洛谷1040 加分二叉树]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/47313307</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/47313307</guid><author>huzujun</author><pubDate>Thu, 06 Aug 2015 10:58:12 +0800</pubDate><description><![CDATA[洛谷1040 加分二叉树 
本题地址： http://www.luogu.org/problem/show?pid=1040题目描述 
　　设一个n个节点的二叉树tree的中序遍历为（1,2,3,…,n），其中数字1,2,3,…,n为节点编号。每个节点都有一个分数（均为正整数），记第i个节点的分数为di，tree及它的每个子树都有一个加分，任一棵子树subtree（也包含tree本身）的加分计算方法]]></description><category></category></item><item><title><![CDATA[洛谷1220 关路灯]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/47262909</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/47262909</guid><author>huzujun</author><pubDate>Mon, 03 Aug 2015 21:22:38 +0800</pubDate><description><![CDATA[洛谷1220 关路灯 
本题地址： http://www.luogu.org/problem/show?pid=1220题目描述 
某一村庄在一条路线上安装了n盏路灯，每盏灯的功率有大有小（即同一段时间内消耗的电量有多有少）。老张就住在这条路中间某一路灯旁，他有一项工作就是每天早上天亮时一盏一盏地关掉这些路灯。 
    为了给村里节省电费，老张记录下了每盏路灯的位置和功率，他每次关灯时也都是尽快地]]></description><category></category></item><item><title><![CDATA[洛谷2279 03湖南 消防局的设立]]></title><link>https://blog.youkuaiyun.com/huzujun/article/details/47258505</link><guid>https://blog.youkuaiyun.com/huzujun/article/details/47258505</guid><author>huzujun</author><pubDate>Mon, 03 Aug 2015 16:41:45 +0800</pubDate><description><![CDATA[洛谷2279 03湖南 消防局的设立 
本题地址： http://www.luogu.org/problem/show?pid=2279题目描述 
2020年，人类在火星上建立了一个庞大的基地群，总共有n个基地。起初为了节约材料，人类只修建了n-1条道路来连接这些基地，并且每两个基地都能够通过道路到达，所以所有的基地形成了一个巨大的树状结构。如果基地A到基地B至少要经过d条道路的话，我们称基地A到基]]></description><category></category></item></channel></rss>