<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[small_small_chick的专栏]]></title><description><![CDATA[Study Hard]]></description><link>https://blog.youkuaiyun.com/small_small_chick</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; small_small_chick]]></copyright><item><title><![CDATA[SQLite实现不同数据库的表内容复制--从一个数据库把表和内容复制到另一个数据库]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/38019393</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/38019393</guid><author>small_small_chick</author><pubDate>Mon, 21 Jul 2014 16:23:04 +0800</pubDate><description><![CDATA[SQLite实现不同数据表之前内容复制
1）  在SQLiteExpert Personal 3中鼠标右键点击目的数据库dist的Attach  Database，将原数据库source附加在dist上。
2）  执行下面的SQL语句实现表格内容复制（将source数据库的表格table1中内容复制到dist的某一个表格中）：
l  当dist数据库已经存在table1表格，
insert]]></description><category></category></item><item><title><![CDATA[C++ Set和multSet]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12500067</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12500067</guid><author>small_small_chick</author><pubDate>Wed, 09 Oct 2013 12:22:12 +0800</pubDate><description><![CDATA[最近发现C++ STL  Set 容器是个好东东，所以学习了一下
以下博客内容转自：http://blog.sina.com.cn/s/blog_779cf3410101389s.html
有些地方自己稍微补充了一下
1       set的含义
        set是集合，它是一个有序的容器，里面的元素都是排序好的，支持插入，删除，查找等操作，就 像一个集合一样。所有的操作的都是严格在]]></description><category></category></item><item><title><![CDATA[hdu 4545 魔法串]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12455563</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12455563</guid><author>small_small_chick</author><pubDate>Tue, 08 Oct 2013 23:10:32 +0800</pubDate><description><![CDATA[思路：假设小西字符串为str1[i] , 小明的字符串为str2[j] 遍历一次str1[i] ，查看对于每一个str1[i] 是否有str2[j] == str1[i] 或者 hash[str2[j]][str1[i]] == 1若都存在则输出happy, 否则输出unhappy.
注意：每一个输入后要加一个getchar(); 这点wrong了好几次

#include 
using n]]></description><category></category></item><item><title><![CDATA[hdu1056 HangOver - 二分查找]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12423777</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12423777</guid><author>small_small_chick</author><pubDate>Tue, 08 Oct 2013 11:20:37 +0800</pubDate><description><![CDATA[思路：先打表，然后再二分查找，此时的二分查找要找到满足条件的最小的一个数
代码如下：
#include 
using namespace std;

#define N 300
double dist[N];

void init()
{
	int i = 0;
	dist[0] = 0;
	for (i = 1;i < N; ++i)
	{
		dist[i] = dist[i - 1] +]]></description><category></category></item><item><title><![CDATA[hdu 4544 叛逆的小明 -- 数字反转 和 hdu 2074 叠筐（水题）]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12406977</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12406977</guid><author>small_small_chick</author><pubDate>Mon, 07 Oct 2013 23:14:18 +0800</pubDate><description><![CDATA[水题：数字的反转，123变成321，  复数时前导0去掉 比如-100变成-1

#include 
using namespace std;

#define N 10000

int Reverse(int inNum)
{
	int sum = 0;
	if (inNum < 10)
	{
		return inNum;
	}
	while(inNum%10 == 0) inNum /=]]></description><category></category></item><item><title><![CDATA[hdu 4544 湫湫系列故事——消灭兔子， 贪心算法+小顶堆]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12317737</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12317737</guid><author>small_small_chick</author><pubDate>Sat, 05 Oct 2013 19:06:05 +0800</pubDate><description><![CDATA[思路：
贪心算法
1）把所有兔子的血量安从大到小排序，并且把箭的伤害从大到小排序
2）排序后，从第一只兔子开始，把每支能杀死该兔子的箭的价格放到一个小顶堆里
3）若堆不空，获得小顶堆的堆顶元素，删除之，直到所有兔子都能被射死或者找不到一支射死兔子的箭结束
代码如下：

#include 
#include 
#include 
#include 
using namespace st]]></description><category></category></item><item><title><![CDATA[hdu 4221 Greedy 贪心算法]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12315135</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12315135</guid><author>small_small_chick</author><pubDate>Sat, 05 Oct 2013 17:08:46 +0800</pubDate><description><![CDATA[题意：做任务，每一个任务i都有花费时间ci, 截止时间di， penalty = max(Ti - di) Ti为第i个任务的实际完成时间，di为其截至时间，要求所有任务的penalty尽可能的小一个
思路：
贪心算法：要求截至日期最小的应该最早完成，因为拖得越晚，penalty越大
#include 
#include 
using namespace std;

#define N 10]]></description><category></category></item><item><title><![CDATA[hdu 4286 Alice and Bob --贪心]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12306297</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12306297</guid><author>small_small_chick</author><pubDate>Sat, 05 Oct 2013 11:28:45 +0800</pubDate><description><![CDATA[思路：（参考网络上的思路）
先对坐标排序，若h不等，则对h升序排序，否则对w进行升序排序
排序后之后，扫描Alice的手牌，把所有Bob[j].h等于Alice[i].h
的Bob[j].w放入一个集合中，并且在该集合中找到第一个大于Alice[i].w的Bob[x].w
那么Bob[x-1].w就是跟Alice[i].w最接近的牌，若存在则删除之。

#include 
#inclu]]></description><category></category></item><item><title><![CDATA[hdu 3998 Sequence 贪心算法+最长递增子序列+二分查找（好题目）]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12285541</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12285541</guid><author>small_small_chick</author><pubDate>Fri, 04 Oct 2013 17:29:33 +0800</pubDate><description><![CDATA[题意：给定一个数组，求该数组中严格最长递增子序列的长度和相应的最长子序列的个数，在求最长子序列的有多少种时，数组中每一个元素只能使用一次
思路：1. 求最长递增子序列的长度时，我们使用二分查找的方法求，具体的操作是维护一个辅助数组，这个辅助数组dp[k]中保存着当前已经获得最长递增子序列，k表示当前的辅助数组中递增序列的个数，当处理原数组中下一个元素data[i]时，
1）若data[i] >]]></description><category></category></item><item><title><![CDATA[hdu2072 单词数 和 hdu4018 Parsing URL]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12258575</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12258575</guid><author>small_small_chick</author><pubDate>Thu, 03 Oct 2013 19:15:30 +0800</pubDate><description><![CDATA[hdu 2072 单词数

#include 
#include 
#include 
using namespace std;

#define N 10000
char str[N];
char word[N];

map m_hash;

int main()
{
	int i, n, t;
	char * p = 0;

	while(gets(str))
	{
		if (str[0]]></description><category></category></item><item><title><![CDATA[hdu2057 A + B Again]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12242223</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12242223</guid><author>small_small_chick</author><pubDate>Wed, 02 Oct 2013 22:41:35 +0800</pubDate><description><![CDATA[题意：求2个十六进制数加法的和
写了2个版本的代码
一个版本按照大数求解

#include 
#include 
using namespace std;

#define N 200

char str1[N];
char str2[N];
int num1[N];
int num2[N];
int num3[N];
int m_hash[256];
void init()
{
	m_]]></description><category></category></item><item><title><![CDATA[hdu 1880 魔咒词典--字符串简单查找]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12237171</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12237171</guid><author>small_small_chick</author><pubDate>Wed, 02 Oct 2013 16:36:28 +0800</pubDate><description><![CDATA[思路：
使用两个二维数组分别存储Key和Value, 当找到Key,时输出Value; 找到Value时输出Key;
注意：1）此题使用STL 中map会 Memory Limit Exceeded
            2)  Key长度不会超过20， Value 长度不会超过 80， 刚开始搞反了，一直出现Output  Limit Exceeded

#include 
#inc]]></description><category></category></item><item><title><![CDATA[hdu 2100 Lovekey 大数加法]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12234429</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12234429</guid><author>small_small_chick</author><pubDate>Wed, 02 Oct 2013 13:29:41 +0800</pubDate><description><![CDATA[思路：
26进制的大数相加
注意：1) AAAAA * (*表示任意一个字符) 为*
             2) AAAA AAAA 只能输出一个A
            3) 数组开的大一点，比如说500



#include 
using namespace std;

#define N    500

char stra[N];
char strb[N];
char]]></description><category></category></item><item><title><![CDATA[hdu1501Zipper -- 经典DFS]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12226209</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12226209</guid><author>small_small_chick</author><pubDate>Tue, 01 Oct 2013 23:14:02 +0800</pubDate><description><![CDATA[经典的DFS
题意：有3个字符串，问第三个字符串能否有前2个字符串拼接起来，拼接时前2个字符串中字符在新字符串中的先后相对位置不能改变。
思路：DFS,前2个字符串，从前向后搜索看能否能拼成第三个字符串的顺序，另外我们需要增加一个辅助数组进行剪枝操作，不然会有重复的搜索的。
m_hash[i][j] = 1 表示第一个数组的第i位比较到第2个数组的第j位时已经被搜索过了，以后若遇到m_has]]></description><category></category></item><item><title><![CDATA[hdu 4148 Length of S(n) --字符串找规律]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12223449</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12223449</guid><author>small_small_chick</author><pubDate>Tue, 01 Oct 2013 20:22:29 +0800</pubDate><description><![CDATA[题目：
S(1)=1,
S(2)=11,
S(3)=21,
S(4)=1211,
S(5)=111221,
S(6)=312211,
....
求S(n)的长度。
思路：
题目很简单就是压缩字符串， 比如：s[4] = 1211  那么是s[5]中内容就是1一个1即11， 一个2即12和2个1即21， 合起来s[5]就是11 12 21 
同理s[5] = 111221 那么]]></description><category></category></item><item><title><![CDATA[manacher算法求最长回文串 和 hdu 3068  最长回文串]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12221911</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12221911</guid><author>small_small_chick</author><pubDate>Tue, 01 Oct 2013 17:38:10 +0800</pubDate><description><![CDATA[hdu 3068 最长回文 （manacher算法）
1. 回文串定义
回文串是一个正读和反读都一样的字符串，比如“aba”或者“abba”等等就是回文串。
2. 最长回文子串方法
最长回文子串的长度方法可以有三种方法：
1） 朴素算法是依次以每一个字符为中心向两侧进行扩展，时间复杂度是O(N^2)的；
2） 利用扩展的KMP算法，时间复杂度也很快O(N*logN)。
3） mana]]></description><category></category></item><item><title><![CDATA[hdu 字符串水题 hdu1073Online Judge 和 hdu1200To and Fro hdu1321Reverse Text]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12207583</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12207583</guid><author>small_small_chick</author><pubDate>Mon, 30 Sep 2013 21:59:37 +0800</pubDate><description><![CDATA[hdu1073Online Judge

#include 
using namespace std;

#define N    256
#define M    5010
char source[M];
char dist[M];
int  m_hash[N];

int main()
{
	int i, n, t;
	char tmpstr[N];
	while(scanf("%d",]]></description><category></category></item><item><title><![CDATA[hdu2594Simpsons’ Hidden Talents--KMP算法]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12207469</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12207469</guid><author>small_small_chick</author><pubDate>Mon, 30 Sep 2013 21:55:48 +0800</pubDate><description><![CDATA[思路：利用KMP算法求出第二个字符串最后一个字符的后缀长度即可。

#include 
using namespace std;

#define N 50010
char parent[N];
char child[N];
int  Next[N];

void getNext(char child[])
{
    int n = strlen(child);
    int i = 0,]]></description><category></category></item><item><title><![CDATA[2014年爱奇艺的校招题目-大题第八题]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12145341</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12145341</guid><author>small_small_chick</author><pubDate>Sat, 28 Sep 2013 23:04:21 +0800</pubDate><description><![CDATA[爱奇艺的一道笔试题目：
给定一个数组A中有N个元素，元素范围为1到N,1到N中元素有的没有出现，有的出现多次
要求：统计数组A中没有出现的元素和出现多次的元素个数
时间复杂度O(n)，空间复杂度O(1)
思路：
对于数组A = {1, 2, 2, 3}

A[1] = 1 > 0 时 A[1] == 1 ，A[1] = 1是新出现的数字，并且A[i]=1等于其下标，所以A[1] =]]></description><category></category></item><item><title><![CDATA[树的子结构遍历]]></title><link>https://blog.youkuaiyun.com/small_small_chick/article/details/12048443</link><guid>https://blog.youkuaiyun.com/small_small_chick/article/details/12048443</guid><author>small_small_chick</author><pubDate>Thu, 26 Sep 2013 14:12:20 +0800</pubDate><description><![CDATA[思路：
1.在原数中进行遍历每个节点，查看该节点值是否和给定子树节点值相同，若相同则比较比较子结构
  1）若子结构相同，则返回
  2）若子结构不相同，则继续比较原树中根节点和给定子树根节点值。
2.遍历直到整个原树中所有节点都被遍历过，或者找到给定子树的子结构
#include 
using namespace std;

int preOrder[] = {10, 6, 4, 8,]]></description><category></category></item></channel></rss>