<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[suikay的专栏]]></title><description><![CDATA[Knowledge will lock your imagination]]></description><link>https://blog.youkuaiyun.com/suikay</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; suikay]]></copyright><item><title><![CDATA[Eureka! (续)]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/7965281</link><guid>https://blog.youkuaiyun.com/suikay/article/details/7965281</guid><author>suikay</author><pubDate>Tue, 11 Sep 2012 01:00:05 +0800</pubDate><description><![CDATA[克里希那穆提曾明确地把快乐和快感明确区分开来。他认为快乐是一种不功利的愉悦， 而快感更多的是欲望的满足。ACM曾经把两样都带给我了。把那些比赛胜利后的喜悦和刷题 的快感刨去后，剩下的是思考的快乐。我想可以把这些快乐两种，分别是，理解算法的快乐 和应用算法的快乐。
    虽然觉得算法艰难的人比觉得算法优美的人多。但是不可否认，每个学过算法人都会有 那种"what the fuck!"的时刻。原来]]></description><category></category></item><item><title><![CDATA[Eureka!]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/7944525</link><guid>https://blog.youkuaiyun.com/suikay/article/details/7944525</guid><author>suikay</author><pubDate>Wed, 05 Sep 2012 01:02:07 +0800</pubDate><description><![CDATA[写这篇文章的冲动，缘起于昨天晚上的小事。
昨天晚上快要休息的时候，在亚马逊上瞎逛，发现了一本好书《网络、群体与市场》（亚马逊的推荐系统真给力）。一看目录和简介就知道，这应该是一本关于将数学模型应用到实际使用中的例子的书。而且内容似乎蛮丰富的。价钱也公道，500+页只需要40+RMB。控制不住自己的购书欲望，一下子就下了单，就差付款了。幸运的是，支付宝在chrome上使用需要安装插件。等插件安装完]]></description><category></category></item><item><title><![CDATA[POJ 1095]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/6273716</link><guid>https://blog.youkuaiyun.com/suikay/article/details/6273716</guid><author>suikay</author><pubDate>Thu, 24 Mar 2011 12:00:00 +0800</pubDate><description><![CDATA[这道题感觉上只是一道简单的推理题，它的难点应该是把生成树的规律找出来吧。首先，我们要得到一个节点数为x的二叉树有几种，这里用arr[x]表示。据说有一个叫做卡特兰的公式可以确定这个数组。但实际上只要通过观察即可发现，通过枚举左右子树的数量可以得到arr[x]：for (int i = 0; i 其次，如果一棵树的序号为X，如何确定其节点数：由于题目已经说明：All binary trees having m nodes have numbers less than all those having m+1 ]]></description><category></category></item><item><title><![CDATA[POJ 3625 Building Roads 解题报告]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4407715</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4407715</guid><author>suikay</author><pubDate>Tue, 04 Aug 2009 15:36:00 +0800</pubDate><description><![CDATA[ 题意：给出N个坐标点的位置，其中的K个是已经相连的，求把它们连在一起需要最短的路径和。分析：典型的最小生成树。一开始我选择了Kruskal（我也不知道怎么会选上的。。）。把所有有可能的边全部添加进去，外加stl的heap优化。#include #include #include #include #include #include #include #incl]]></description><category></category></item><item><title><![CDATA[1011 Sticks ]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4397968</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4397968</guid><author>suikay</author><pubDate>Fri, 31 Jul 2009 16:55:00 +0800</pubDate><description><![CDATA[ 摘自Poj的warmtrue大牛：1。降序排列，从最长的开始一个个找。如果找的是第一根杆而且最长的没有选到则终止。2。两个相同值，前一个搜索失败后后一个也不用找了。这两条都是搜索经常用到的剪枝，不过我写的时候忽略了第二条，TLE。加了以后32MS就过了。#include #include #include using namespace std;int n,ori_s]]></description><category></category></item><item><title><![CDATA[POJ 1149 PIGS 解题报告]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4390242</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4390242</guid><author>suikay</author><pubDate>Wed, 29 Jul 2009 12:25:00 +0800</pubDate><description><![CDATA[ 可以将每个顾客能打开的猪圈合并为一个，如果其中一个已经被合并过，则加一条由此猪圈 到 之前拥有这个猪圈钥匙的顾客的猪圈，容量为无穷。这样我们就可以得到一个带s,t,和 N个中间节点的流量图。然后求最大流即可。#include #include #include using namespace std;const int M(1100),N(110),INF(0x7ffffff]]></description><category></category></item><item><title><![CDATA[最长子序列的更优解法]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4367732</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4367732</guid><author>suikay</author><pubDate>Tue, 21 Jul 2009 16:50:00 +0800</pubDate><description><![CDATA[这个算法巧妙之处在于利用了大部分之前的计算的信息。这里开了一个数组，记录最长子序列stack，stack[n]记录长度为n的子序列的最小序列尾数。 举例：原序列为1，5，8，3，6，7  读完8以后，栈为1，5，8，此时读到3，则用3替换5，得到栈中元素为1，3，8，  再读6，用6替换8，得到1，3，6，再读7，得到最终栈为1，3，6，7， 最长递增子序列为长度4。（例子来自于h]]></description><category></category></item><item><title><![CDATA[POJ 3414  Pots]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4349103</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4349103</guid><author>suikay</author><pubDate>Wed, 15 Jul 2009 01:55:00 +0800</pubDate><description><![CDATA[本来用string来记录状态，tle，于是改为用类似于并查集的方法记录。只记录 此次动作 和 上一个动作的位置。中间又有一些低级失误，wa了n次。。orz/*ID: immozer1PROG: ****LANG: C++*/#include #include #include #include #include #include #include]]></description><category></category></item><item><title><![CDATA[linux 下 java  的path问题]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4091424</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4091424</guid><author>suikay</author><pubDate>Sun, 19 Apr 2009 10:34:00 +0800</pubDate><description><![CDATA[今天打算在linux下写个helloworld。敲完代码，javac，米问题。java jw.class 结果如下：root@slax:~# java hw.classException in thread "main" java.lang.NoClassDefFoundError: hw/classCaused by: java.lang.ClassNotFoundException: ]]></description><category></category></item><item><title><![CDATA[2954 Triangle 解题报告]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4090210</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4090210</guid><author>suikay</author><pubDate>Sat, 18 Apr 2009 17:20:00 +0800</pubDate><description><![CDATA[/*Pick公式：整点多边形的面积=内部整点个数+边上的整点个数/2 - 1.*/#include#include#includeusing namespace std;int _tmp;void swap(int &x,int &y){	_tmp = x;	x = y;	y = _tmp;}int gcd(int x,int y){]]></description><category></category></item><item><title><![CDATA[1151 Atlantis 解题报告]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4054436</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4054436</guid><author>suikay</author><pubDate>Tue, 07 Apr 2009 15:38:00 +0800</pubDate><description><![CDATA[ 让人很崩溃的一题，我觉得自己用错方法了，居然写了3000+B的代码,写完都ft了...虽说比波哥的快了32ms,但是他的只有2500-B的代码啊,加上他爱开空行的习惯真不懂我比他多写了多少,ft again. 出乎意料的顺利地几乎1y ,出了个pe,ft once more下面是代码#include#include#include#includeusing namespa]]></description><category></category></item><item><title><![CDATA[3277 City Horizon 解题报告]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4053817</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4053817</guid><author>suikay</author><pubDate>Tue, 07 Apr 2009 12:18:00 +0800</pubDate><description><![CDATA[ 线段树离散化的第二题，做起来困难重重，wa到快崩溃了。偷看了一下波哥的博客才把它做出来了。活生生的一个山寨。。。今天要把线段树的题目刷完~//这次线段树用的是半开区间,跟以往有些不同//错误主要集中于线段树的insert操作,另外在//map用1为起始下标导致了2+的wa//ERRORS:  5 wa + 3 tle + 1 re#include#include#in]]></description><category></category></item><item><title><![CDATA[2528 Mayor's posters 解题报告]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4052345</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4052345</guid><author>suikay</author><pubDate>Mon, 06 Apr 2009 16:37:00 +0800</pubDate><description><![CDATA[  很久米做线段树的题了，昨天看了一下江离的解题报告。发现一个好东西--离散化，这题里面贴海报的范围很广0~10000000，尝试了几次原始的线段树都mle了。现在的代码可以很轻松的就把它给ac了，这就是离散化的伟大之处... #include#include#includeusing namespace std;#define NIL 10000001#defin]]></description><category></category></item><item><title><![CDATA[POJ 3504 Obfuscation 解题报告]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4048546</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4048546</guid><author>suikay</author><pubDate>Sat, 04 Apr 2009 16:16:00 +0800</pubDate><description><![CDATA[//这道题的解法有点傻...首先对字符串进行hash//得到其在字典中的位置,然后比较两个hash值(hash2,hash3)//是否相等,另外用dp[i]表示其位置是否能达到,0为不能//-1为多种可能,否则就用 101*到达i位置的字符串对应的hash+字符串长度#include#include#include#define P1 3543#define P2 ]]></description><category></category></item><item><title><![CDATA[POJ 1971 Parallelogram Counting 解题报告]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4036458</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4036458</guid><author>suikay</author><pubDate>Mon, 30 Mar 2009 16:53:00 +0800</pubDate><description><![CDATA[ #include#include#include#define MAX 1000#define HMAX  0x3fffff#define P 0x1fffff//将每个中点的x，y都记录下来，如果//同时记录拥有这个中点的线段的个数struct Point{	int x;	int y;	int count;	int next;};Poin]]></description><category></category></item><item><title><![CDATA[POJ 1200 Crazy Search 解题报告]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4036061</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4036061</guid><author>suikay</author><pubDate>Mon, 30 Mar 2009 14:57:00 +0800</pubDate><description><![CDATA[ #include#include#include#includeusing namespace std;#define MAX 5000000#define P	3313//用静态链表代替动态链表struct Hash{	int hash;	int next;};Hash h[MAX];int c[MAX];char x[MAX];in]]></description><category></category></item><item><title><![CDATA[POJ 3349 Snowflake Snow Snowflakes]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4033415</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4033415</guid><author>suikay</author><pubDate>Sun, 29 Mar 2009 11:23:00 +0800</pubDate><description><![CDATA[ #include#include#include#define P1 3313#define P2 3329#define MAX 10000000//这里用静态数组代替了动态数组//时间减少了一半struct Hash{	int h2;	int next;};//使用h1[i]记录和为i雪花对应的hash值的位置int h1[MAX];H]]></description><category></category></item><item><title><![CDATA[福州oj 1689 未ac ]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/4014129</link><guid>https://blog.youkuaiyun.com/suikay/article/details/4014129</guid><author>suikay</author><pubDate>Sun, 22 Mar 2009 13:40:00 +0800</pubDate><description><![CDATA[/*	这题应该不难，主要是将种族杀掉不同怪物	数分别做成一个背包，另外是记录杀死n个怪物 *	所需要的能量，但是为什么就ac不了呢。。 */#include#include#includeusing namespace std;int m,n,p;//e[i][j] 用于记录第i个种族杀掉j个怪物所需要的最少能量//用d[i][j]记录前i个种族要杀掉j个怪]]></description><category></category></item><item><title><![CDATA[2661 Factstone Benchmark 解题报告]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/3991742</link><guid>https://blog.youkuaiyun.com/suikay/article/details/3991742</guid><author>suikay</author><pubDate>Sun, 15 Mar 2009 11:22:00 +0800</pubDate><description><![CDATA[#include#include#define pi 3.14159265#define e 2.71828183 int main(){  int y,last(0);  double m;  for(int y = 1; y <= 22; y++){	  m = pow(2.0,y)/log(2.0);    for(int n = 1; true; n]]></description><category></category></item><item><title><![CDATA[1363 Rails 解题报告]]></title><link>https://blog.youkuaiyun.com/suikay/article/details/3977052</link><guid>https://blog.youkuaiyun.com/suikay/article/details/3977052</guid><author>suikay</author><pubDate>Tue, 10 Mar 2009 17:14:00 +0800</pubDate><description><![CDATA[#include#includeusing namespace std;int main(){  bool v[5010],flag1,flag2;  int n,tmp;  while(cin>>n&&n)  {    while(cin >> tmp&& tmp)    {      bool res(true);      memset(v,f]]></description><category></category></item></channel></rss>