<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[SapphireStart]]></title><description><![CDATA[the positive mention attitude]]></description><link>https://blog.youkuaiyun.com/SapphireStart</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; SapphireStart]]></copyright><item><title><![CDATA[高效率集合BitSet]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/49368039</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/49368039</guid><author>SapphireStart</author><pubDate>Fri, 23 Oct 2015 23:04:04 +0800</pubDate><description><![CDATA[1,有一个连起来的项链，每个珠子都有一种颜色(所有颜色共有m种)，珠子共有n个，需要给出一个最小的长度l，从某个位置开始连续l个，包含了所有的m种颜色。
从任意位置断开后变成链，处理时最后求余在化为圆形。
最简单的方法枚举，但是需要O(n3)
因此考虑.
color[x],为地x个珠子的颜色。
若记s(j,i)为起点为j,长度为i的颜色集合。
ans[j][i]为从j长度为i的颜色个数]]></description><category></category></item><item><title><![CDATA[笔试编程总结]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/49366995</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/49366995</guid><author>SapphireStart</author><pubDate>Fri, 23 Oct 2015 22:40:02 +0800</pubDate><description><![CDATA[1.现在将，有颜色的球放在一条直线上，球的颜色只有红色，黑色，并且每种球都是无限多的。如过现在一行球共有n个，那么没有三种相同颜色球相连的共有多少种?
当前球数为n时。
An 前两种球颜色相同。
Bn 前两种球颜色不同。
我的思路：递推
A3 = B3 = 2;
An = B(n-1)(n>3);
Bn = A(n-1) + B(n-1);
#include 
using name]]></description><category></category></item><item><title><![CDATA[变换的灯]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/49360091</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/49360091</guid><author>SapphireStart</author><pubDate>Fri, 23 Oct 2015 13:20:12 +0800</pubDate><description><![CDATA[有N个灯放在一排（编号从1到m)，如果对灯执行n此i操作(i = 1,2,3....n),对于一次i操作的定义如下，将一次i操作定义为，（将编号为i的倍数的灯进行翻转，开到关，关倒开），那么如果开始所有灯都是关闭的，那么进行n次操，之后，会有多少个灯是打开的。
我的思路：
解法一：模拟.
#define max_n 10000001
int vis[max_n]; 
int solve_fi]]></description><category></category></item><item><title><![CDATA[线段长度]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/49359573</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/49359573</guid><author>SapphireStart</author><pubDate>Fri, 23 Oct 2015 12:19:09 +0800</pubDate><description><![CDATA[1.一维空间之中(L)，存在若干条线，表示为(l,r)[r>=l],指从l到r的线，这条线长度为r-l,给定n条这样的线，他们之间如果相交，那么长度就是最后的表现形式，
如：
(2,8) (1,5) ,则长度为8-1+1=9。 
(3,6) (3,4) ,侧长度为6-3+1=4。
这样，求出所有的n条线的总长度。
输入：
n,以后有n个输入每一个为a,b (b>=a) 但是不保证两次输]]></description><category></category></item><item><title><![CDATA[(模板)线段树set(a,b) query(a,b)]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/44871593</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/44871593</guid><author>SapphireStart</author><pubDate>Sat, 04 Apr 2015 11:00:47 +0800</pubDate><description><![CDATA[#include 
#include 
#define MAX_N 100000
#define INF   (-(MAX_N))
typedef float Type;
int ol,or;
Type _min,_max,_sum,v;
Type sumv[MAX_N],minv[MAX_N],maxv[MAX_N],addv[MAX_N],setv[MAX_N];
Type max(Type]]></description><category></category></item><item><title><![CDATA[自然数质数(筛法求质数)分解个数母函数方法初探.]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/44569235</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/44569235</guid><author>SapphireStart</author><pubDate>Mon, 23 Mar 2015 20:53:32 +0800</pubDate><description><![CDATA[任何一个大于1的自然数n都可以携程都可以写成若干个大于等于2小于等于n的质数之和,并不只有一种形式.例如9就有四种形式.
9 = 2 + 5 +2 = 2 + 3 +2 +2 = 3 + 3 +3= 2+ 7
方法一:
直接进行搜索(输入限制很大).
方法二:
构造下列母函数.
G(x) = (1+x^2+x^4+x^6+.....x^(x/2)) (1+x^3+x^6+x^9+...]]></description><category></category></item><item><title><![CDATA[有序(循环)数组查找元素-二分查找法]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/44538285</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/44538285</guid><author>SapphireStart</author><pubDate>Sun, 22 Mar 2015 16:56:21 +0800</pubDate><description><![CDATA[1.我们将一个有序数组(n个元素)从i(号位置)之前放到n位置之后形成的数组为有序循环数组。
2.数组 1 2 4 5 6 7 8
   的有序循环数组有
  1 2 4 5 6 7 8 （元数组是位置0处的有序循环数组).

  2 4 5 6 7 8 1 

  4 5 6 7 8 1 2
  5 6 7 8 1 2 4

  6 7 8 1 2 4 5 

  7 8]]></description><category></category></item><item><title><![CDATA[浅谈"对抗搜索"的alpha-beta 剪枝]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/44120447</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/44120447</guid><author>SapphireStart</author><pubDate>Sat, 07 Mar 2015 21:23:11 +0800</pubDate><description><![CDATA[１．对抗搜索

在对弈中经常会遇到可能性很多而有没有规律的情况，这时可以对所有后续情况进行分析，选择当前对自己最有利的一中情况．
如果两方A,B进行对弈，计算现在局面的分数（对A和Ｂ），如果两方处于对立，那么一定在一方分数高的同时另一方分数会低（
每方都希望局面对自己有利），因此此时进计算A的分数，Ｂ的分数可以由Ａ的分数反应（A高Ｂ低,Ａ低Ｂ高），如果两个人足够
聪明（知道Ｎ局以后可能的]]></description><category></category></item><item><title><![CDATA[(模板)平衡二叉树]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/44098265</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/44098265</guid><author>SapphireStart</author><pubDate>Fri, 06 Mar 2015 13:02:46 +0800</pubDate><description><![CDATA[#include 
#include 
#include 
typedef struct t_type{
        int hight;
        int blance;
        int val;
        struct t_type * lchild;
        struct t_type * rchild;
}node;
node * clue[200];
in]]></description><category></category></item><item><title><![CDATA[无向图的边存储]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/41676507</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/41676507</guid><author>SapphireStart</author><pubDate>Tue, 02 Dec 2014 11:51:31 +0800</pubDate><description><![CDATA[1.在图中一条边包含有两个结点。
2.一个结点可能相关n条边
因此我们可以把每一个结点包含的边放到同意集合之中（此处已链表存放，此时用顶点v作为集合的表示，即为链表表头）
其中一个边，和该边具有的两个结点作为集合中的一个元素。
x nx n ny y，编号为n的边的相关的两个结点x,y,nx是指向下一个与x相关的元素，ny是指向与y相关的元素
按照上述方法讲一个无向图划分为n个顶点为标识]]></description><category></category></item><item><title><![CDATA[数字最小k分割（算法上机)]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/41675671</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/41675671</guid><author>SapphireStart</author><pubDate>Tue, 02 Dec 2014 11:21:16 +0800</pubDate><description><![CDATA[对于一个整数x，的最小k(分割次数)分割，是在(k
（注意：对数字x的分割，对于任意分割位置两端必须有数字，即分割所在位置在数字之间，因为在数字两端相当于没有分割，并且任意数x的0，分割>他的k分割K>1
证明:
此时存在数字
数字:a..b..
a*10^x+b*10^y  > (a*(10^(x-y)) * b*10^y
 (a*(10^(x-y)) +1> (a*(10^(x-y]]></description><category></category></item><item><title><![CDATA[linux 中的僵死进程和孤儿进程]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/40925451</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/40925451</guid><author>SapphireStart</author><pubDate>Sat, 08 Nov 2014 21:01:52 +0800</pubDate><description><![CDATA[当我们使用创建进程的函数fork(),vfork()等，创建了子进程
1.子进程先于父亲进程退出，会造成子进程的进程编号无法释放.（进程编号的范围很大，但不应该随意浪费）
2.子进程后于父亲进程退出，子进程会交给init()进程管理. 

3.一个进程在执行完毕后，系统会自动清空其存在的进程的相关资源
结合上面说明，一个僵死进程的例子.
#include 
#include 
int ]]></description><category></category></item><item><title><![CDATA[log翻硬币]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/40152427</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/40152427</guid><author>SapphireStart</author><pubDate>Thu, 16 Oct 2014 20:16:19 +0800</pubDate><description><![CDATA[若果有一组硬币,（假定有十个）,每个硬币只有两个面，正面用以表示，反面用零表示.
给定目标（初始状态）1111100000 正正正正正反反反反反
       (目标状态) 1000011101 目标
若果每次只可以，转动相邻的两个硬币（他们各自成为原来的对立面）
问题，至少用多少次就可以达到目的.
将每一种状态标记为，每一次的硬币翻动（1-9）状态i，都会使，当前状态变为另一种状态状态]]></description><category></category></item><item><title><![CDATA[linux创建文件树,孩子兄弟树（或广义表）,创建文件树及其访问]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/40130501</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/40130501</guid><author>SapphireStart</author><pubDate>Thu, 16 Oct 2014 00:41:09 +0800</pubDate><description><![CDATA[如果在Linux下要访问一个文件夹。]]></description><category></category></item><item><title><![CDATA[分治理法求数组最大值]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/39701277</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/39701277</guid><author>SapphireStart</author><pubDate>Tue, 30 Sep 2014 23:09:09 +0800</pubDate><description><![CDATA[现在给出一个n个元素的书组]]></description><category></category></item><item><title><![CDATA[c语言用rand() 函数，实现random(int m)]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/39700963</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/39700963</guid><author>SapphireStart</author><pubDate>Tue, 30 Sep 2014 22:52:15 +0800</pubDate><description><![CDATA[函数rand()是真正的随机数生成器，而srand()会设置供rand()使用的随机数种子。如果你在第一次调用rand()之前没有调用srand()，那么系统会为你自动调用srand()。而使用同种子相同的数调用 rand()会导致相同的随机数序列被生成。]]></description><category></category></item><item><title><![CDATA[1159 Palindrome(最少插入回文串)]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/39695391</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/39695391</guid><author>SapphireStart</author><pubDate>Tue, 30 Sep 2014 14:42:57 +0800</pubDate><description><![CDATA[题目大意给出一个串的长度，]]></description><category></category></item><item><title><![CDATA[poj1050最大子矩阵和]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/39676525</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/39676525</guid><author>SapphireStart</author><pubDate>Mon, 29 Sep 2014 21:25:06 +0800</pubDate><description><![CDATA[这篇是看了别人的报告写的，就当是屡屡思路]]></description><category></category></item><item><title><![CDATA[最大子段和]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/39528771</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/39528771</guid><author>SapphireStart</author><pubDate>Wed, 24 Sep 2014 20:47:56 +0800</pubDate><description><![CDATA[/*
 再给顶的n个数的数组中选出连续的若干个数,使得他们的和是最大的,即最大连续自序列和.
 我的思路.
 1.最大连续子序列的开头是在1...n之中.的最大连续和
 2.求出以i，开头的最大连续和，此时开头已经确定了，那麽通过枚举结尾j[i,j]之间记录最大连续的i->j的和max[i]
 3.在所有以i开头的连续最大和中求出最大的一个即可.
 */
#include 
#define max]]></description><category></category></item><item><title><![CDATA[clang_complete vim 简单配置]]></title><link>https://blog.youkuaiyun.com/SapphireStart/article/details/38492185</link><guid>https://blog.youkuaiyun.com/SapphireStart/article/details/38492185</guid><author>SapphireStart</author><pubDate>Mon, 11 Aug 2014 14:24:25 +0800</pubDate><description><![CDATA[vim 的功能很强.]]></description><category></category></item></channel></rss>