<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Uhh, call me zacky NOW!!!]]></title><description><![CDATA[I'm one of flying stones ever...]]></description><link>https://blog.youkuaiyun.com/Flying_Stones_Sure</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Flying_Stones_Sure]]></copyright><item><title><![CDATA[Archlinux 安装记录（一）]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/41607573</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/41607573</guid><author>Flying_Stones_Sure</author><pubDate>Sun, 30 Nov 2014 12:06:18 +0800</pubDate><description><![CDATA[好像好久不写blog blahblah 之类的东西了，但愿这次会坚持的久一点。
楼主最近想找一台slave 机来玩（本机Ubuntu 13.04），想装一个other linux 发行版，脑抽的问了stonekyx，他在使archlinux，然后我就呵呵呵。。。


Zacky原创，转载请注明出处。]]></description><category></category></item><item><title><![CDATA[SOJ Binary Numbers dp + 逼近思想]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8227112</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8227112</guid><author>Flying_Stones_Sure</author><pubDate>Mon, 26 Nov 2012 19:03:29 +0800</pubDate><description><![CDATA[题意：给定k（k
题解：看到题就想到是构造，由于问的是第k大，那么逐步逼近。
         预处理出dp[ i ][ j ][ 0 ]表示末 i 位中有 j 个1且当前位为0的方法数，dp[ i ][ j ][ 1 ]表示末 i 位中有 j 个1且当前位为1的方法数，
         然后从高位到低位扫一遍即可。但是由于n = 1的时候可以直接得到答案，所以n = 2为极限情况，所以预]]></description><category></category></item><item><title><![CDATA[POJ 1011 Sticks 经典dfs + 剪枝]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8172549</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8172549</guid><author>Flying_Stones_Sure</author><pubDate>Mon, 12 Nov 2012 00:01:52 +0800</pubDate><description><![CDATA[题意：给n（n
题解：经典dfs+剪枝。总结起来三个剪枝，具体见代码。


Sure原创，转载请注明出处

#include 
#include 
#include 
#include 
using namespace std;
const int maxn = 70;
int stick[maxn];
bool vis[maxn];
int sum,n,cur;

bool cmp(]]></description><category></category></item><item><title><![CDATA[POJ 2750 Potted Flower 动态最大子段和]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8169746</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8169746</guid><author>Flying_Stones_Sure</author><pubDate>Sat, 10 Nov 2012 18:53:52 +0800</pubDate><description><![CDATA[题意：给定n（4
         但是要求不能所有的数字都被选择。
题解：最大子段和的维护，因为是环形，需要同时维护最小子段和，至于能不能全选，维护最小值判断下即可。


Sure原创，转载请注明出处


#include 
#include 
#include 
#define MIN(a , b) ((a) < (b) ? (a) : (b))
#define MAX(a ,]]></description><category></category></item><item><title><![CDATA[HDU 2416 Treasure of the Chimp Island bfs 最短路]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8138974</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8138974</guid><author>Flying_Stones_Sure</author><pubDate>Thu, 01 Nov 2012 23:54:09 +0800</pubDate><description><![CDATA[题意：给最大100*100的地图，$代表财宝，*表示不可达，. 表示走过不需要花费，1~9表示走过需要花费1~9，边界格子为* ，#（表示从此进入可以带0个
         炸药）或A~Z（表示从此进入可以带1~26个炸药），现在一个人可以从边界非*处进入，最小到达$位置的最小花费是多少。
题解：如果考虑枚举起点的话，最坏情况边界全部为起点，这样至少100*100*100*100的复杂度就悲]]></description><category></category></item><item><title><![CDATA[HDU 2480 Steal the Treasure 并查集+想法]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8136591</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8136591</guid><author>Flying_Stones_Sure</author><pubDate>Thu, 01 Nov 2012 14:24:19 +0800</pubDate><description><![CDATA[题意：给n（1
         偷，想使得所有小偷得到的钱最多（小偷要沿着边的方向走并且只能走到相邻的一条边），问最多能得到多少财宝。
题解：想法贪心，把所有边按照边权从大到小排序，对于单向边如果当前起始点的小偷还可以偷，那么就偷这条边，那么双向边如何处理呢？想象一个由x个点
          x-1条双向边组成的连通块，如果此时规定一个点指出去的方向那么其他点的方向就能定下来，并查集维]]></description><category></category></item><item><title><![CDATA[HDU 4445 Crazy Tank 三分+枚举+二分]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8134930</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8134930</guid><author>Flying_Stones_Sure</author><pubDate>Thu, 01 Nov 2012 00:54:52 +0800</pubDate><description><![CDATA[题意：在高为H的台上有一个坦克向右打炮，[L1.R1]为敌军范围，[L2,R2]为友军范围，现在有n（0
         角度使得任意一个不打在友军的范围内同时打在敌军最多。
题解：对于不同的炮弹打的最远的角度是不一样的，因为这个我wa的很惨。对于每个炮弹三分找出能打最远的角度，然后枚举打的点分别为L1.R1,L2,R2，
         二分得到两个角度更新答案。]]></description><category></category></item><item><title><![CDATA[ural 1928 Another ecology problem 博弈dp]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8120831</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8120831</guid><author>Flying_Stones_Sure</author><pubDate>Sun, 28 Oct 2012 14:26:04 +0800</pubDate><description><![CDATA[题解：两个公司从教育部轮流申请资金，如果库中钱充足的话那么就会拨给这个公司，如果一旦库中没有钱那么停止，如果申请的钱多余库中的那么教育部长会
         把手中的m元钱给他之后申请结束，开始库中有n元钱，每个公司每次申请资金的范围是[1 , k]，问先手的公司最多能得到多少钱，在得到最多钱的情况下
         能让对手得到最少的钱数。
题解：开始是博弈的想法，枚举每个人决策的平衡]]></description><category></category></item><item><title><![CDATA[HDU 3721 Building Roads 树形dp + 枚举直径]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8117000</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8117000</guid><author>Flying_Stones_Sure</author><pubDate>Fri, 26 Oct 2012 21:22:38 +0800</pubDate><description><![CDATA[题意：有n（1
         连接的点对，形成一个新树，问形成的所有新树中P（T）的最小值。
题解：首先可以肯定的是选中的边一定是直径中的一条边，否则直径不变。现在就是将选中的边放在那里的问题，枚举去掉直径上的边形成两颗子树，在两个
         子树分别求直径d1，d2，然后分别求出直径上的点v（假设直径为a->b），使得ABS（len(av) - len(vb)）最小，那么将当前]]></description><category></category></item><item><title><![CDATA[HDU 4125 Moles 笛卡尔树 + kmp]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8110090</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8110090</guid><author>Flying_Stones_Sure</author><pubDate>Thu, 25 Oct 2012 11:40:59 +0800</pubDate><description><![CDATA[题意：有n（1
         也要按照鼹鼠的出场顺序挖洞，在形成的二叉树按照中序遍历顺序奇数偶数（1,0）得到01序列，问01序列中给定的序列出现多少次。
题解：笛卡尔树，k（SBT）为鼹鼠的权值，a（堆）为鼹鼠的编号，排序后O（n）建树之后kmp即可。递归会RE，手动模拟栈。


Sure原创，转载请注明出处


#include 
#include 
#include 
#]]></description><category></category></item><item><title><![CDATA[SGU 396 Dance it up! 状态压缩dp]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8101582</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8101582</guid><author>Flying_Stones_Sure</author><pubDate>Tue, 23 Oct 2012 10:10:00 +0800</pubDate><description><![CDATA[题意：一个人要跳由LRUD组成的序列的舞，然后由题目描述中不同的动作变换需要花费不同的值，问最少需要多少花费能跳完整支舞。
题解：dp[ i ][ j ]表示跳到第 i 位置时候状态为 j 的最小花费，其中注意的是每种状态有三种子状态，分别是左脚踩，右脚踩和双脚都不踩，
         那么一共有36种状态（注意RL状态是不合法的），然后path[ i ][ j ]记录路径即可。]]></description><category></category></item><item><title><![CDATA[SGU 394 Berhatton Bit 维护 Manhattan 距离]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8098520</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8098520</guid><author>Flying_Stones_Sure</author><pubDate>Mon, 22 Oct 2012 14:17:09 +0800</pubDate><description><![CDATA[题意：平面图上有n（2
         问那些点能被删除。
题解：对于一个点能覆盖住的是一个以它为中心的菱形，将坐标轴逆时针旋转45度后每个点的覆盖关系不变，维护上下两条线的加减关系，Bit实现即可。


Sure原创，转载请注明出处


#include 
#include 
#include 
#include 
using namespace std;
const int]]></description><category></category></item><item><title><![CDATA[SGU 384 Country 三角形]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8090489</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8090489</guid><author>Flying_Stones_Sure</author><pubDate>Fri, 19 Oct 2012 16:43:06 +0800</pubDate><description><![CDATA[题意：有n（3
          若不存在输出-1，DELETE x表示删除第x条边。对于每个LENGTH 询问输出答案。
题解：想想会发现图的一个性质，所有三角形挂在同一个点上，这样首先处理下找出中心后，维护非中心点的同在一个三角形内的另一个点的编号，
          像中心方向的边和非中心方向的边是否删除即可。


Sure原创，转载请注明出处

#include 
#i]]></description><category></category></item><item><title><![CDATA[POJ 3714 最近点对问题 分治法]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8088816</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8088816</guid><author>Flying_Stones_Sure</author><pubDate>Fri, 19 Oct 2012 10:49:39 +0800</pubDate><description><![CDATA[题意：station和agent分别有n（1
题解：http://blog.youkuaiyun.com/w397090770/article/details/7295797 这里讲的很好。



#include 
#include 
#include 
#include 
#include 
#define MAX(a , b) ((a) > (b) ? (a) : (b))
#define M]]></description><category></category></item><item><title><![CDATA[Codeforces 231E - Cactus]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8083233</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8083233</guid><author>Flying_Stones_Sure</author><pubDate>Wed, 17 Oct 2012 21:33:32 +0800</pubDate><description><![CDATA[题意：给定n（2cycle中，定义simple path为u->v经历的路径不同即不同，
         k（1v的simple路径的个数。
题解：缩点+倍增lca


Sure原创，转载请注明出处

#include 
#include 
#include 
#define MIN(a , b) ((a) < (b) ? (a) : (b))
using namespace st]]></description><category></category></item><item><title><![CDATA[SGU 257 Debt 贪心 + 模拟]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8057019</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8057019</guid><author>Flying_Stones_Sure</author><pubDate>Wed, 10 Oct 2012 16:33:44 +0800</pubDate><description><![CDATA[题意：有一个人欠三个人分别p o s（1
          价值（1块或者2块），现在问是否存在一种分配方案使得能还清3个人的钱。
题解：首先给不同的crystal排优先级，然后枚举满足三个人的优先级后贪心。


Sure原创，转载请注明出处

#include 
#include 
#include 
#include 
#define MAX(a , b) ((a) > (b)]]></description><category></category></item><item><title><![CDATA[HDU 1754 I Hate It 树状数组求区间最值]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8042812</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8042812</guid><author>Flying_Stones_Sure</author><pubDate>Sat, 06 Oct 2012 11:16:14 +0800</pubDate><description><![CDATA[题意：给n（1
        具体参看：http://www.cnblogs.com/ambition/archive/2011/04/06/bit_rmq.html


Sure原创，转载请注明出处


#include 
#include 
#include 
#define MAX(a , b) ((a) > (b) ? (a) : (b))
using namespace]]></description><category></category></item><item><title><![CDATA[SGU 264 Travel 稳定婚姻匹配 Gale-Shapley算法]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8042365</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8042365</guid><author>Flying_Stones_Sure</author><pubDate>Sat, 06 Oct 2012 00:00:58 +0800</pubDate><description><![CDATA[题意：旅行公司决定夏天带n（1个男人N个女人被选上去参加这个旅行。旅行公司有N辆车，并且每一辆车只能坐两个人，旅行社顾客服务部门
         的领导决定让每辆车里坐一男一女, 这就是为什么他们决定让顾客列出自己的喜好。 假设我们已经把男人和女人进行了一次匹配，让每一个男人和一个女
         人配对，每一个女人也只和一个男人配对。我们把这样的配对叫做“完美匹配”。如果在完美匹配当中]]></description><category></category></item><item><title><![CDATA[SGU 364 Lemmings Dijkstra]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8041913</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8041913</guid><author>Flying_Stones_Sure</author><pubDate>Fri, 05 Oct 2012 20:08:42 +0800</pubDate><description><![CDATA[题意：有n（1
         问最后最多有多少小鼠能够到达目的点和最后一个小鼠的到达时间。
题解：简单的Dijkstra最短路被我写的好丑，维护每个模板下方模板的编号，由于n小可以暴力。


Sure原创，转载请注明出处

#include 
#include 
#include 
#include 
#include 
#define ABS(x) ((x) >= 0 ? (x]]></description><category></category></item><item><title><![CDATA[SGU 366 Computer Game 预处理 + POJ1015 dp]]></title><link>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8038518</link><guid>https://blog.youkuaiyun.com/Flying_Stones_Sure/article/details/8038518</guid><author>Flying_Stones_Sure</author><pubDate>Wed, 03 Oct 2012 20:24:43 +0800</pubDate><description><![CDATA[题意：有n（1
         如果存在多种解找到sum a + sum b最大的输出方案。
题解：因为a b很小，那么每个a-b只保留钱k个a+b最大的选手，这样一共最多有2000个选手，然后类似POJ1015搞一个dp即可。


Sure原创，转载请注明出处

#include 
#include 
#include 
#include 
#define ABS(x) ((x)]]></description><category></category></item></channel></rss>