1,有一个连起来的项链,每个珠子都有一种颜色(所有颜色共有m种),珠子共有n个,需要给出一个最小的长度l,从某个位置开始连续l个,包含了所有的m种颜色。 从任意位置断开后变成链,处理时最后求余在化为圆形。 最简单的方法枚举,但是需要O(n3) 因此考虑. color[x],为地x个珠子的颜色。 若记s(j,i)为起点为j,长度为i的颜色集合。 ans[j][i]为从j长度为i的颜色个数 作者:SapphireStart 发表于 2015/10/23 23:04:04 原文链接 https://blog.csdn.net/SapphireStart/article/details/49368039 阅读:569 继续阅读 >>


张续 15/10/23 23:04:04
1.现在将,有颜色的球放在一条直线上,球的颜色只有红色,黑色,并且每种球都是无限多的。如过现在一行球共有n个,那么没有三种相同颜色球相连的共有多少种? 当前球数为n时。 An 前两种球颜色相同。 Bn 前两种球颜色不同。 我的思路:递推 A3 = B3 = 2; An = B(n-1)(n>3); Bn = A(n-1) + B(n-1); #include using name 作者:SapphireStart 发表于 2015/10/23 22:40:02 原文链接 https://blog.csdn.net/SapphireStart/article/details/49366995 阅读:540 继续阅读 >>


张续 15/10/23 22:40:02
有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 作者:SapphireStart 发表于 2015/10/23 13:20:12 原文链接 https://blog.csdn.net/SapphireStart/article/details/49360091 阅读:397 继续阅读 >>


张续 15/10/23 13:20:12
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) 但是不保证两次输 作者:SapphireStart 发表于 2015/10/23 12:19:09 原文链接 https://blog.csdn.net/SapphireStart/article/details/49359573 阅读:674 继续阅读 >>


张续 15/10/23 12:19:09
#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 作者:SapphireStart 发表于 2015/04/04 11:00:47 原文链接 https://blog.csdn.net/SapphireStart/article/details/44871593 阅读:531 继续阅读 >>


张续 15/04/04 11:00:47
任何一个大于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+... 作者:SapphireStart 发表于 2015/03/23 20:53:32 原文链接 https://blog.csdn.net/SapphireStart/article/details/44569235 阅读:518 继续阅读 >>


张续 15/03/23 20:53:32
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 作者:SapphireStart 发表于 2015/03/22 16:56:21 原文链接 https://blog.csdn.net/SapphireStart/article/details/44538285 阅读:1067 评论:1 查看评论 继续阅读 >>


张续 15/03/22 16:56:21
1.对抗搜索 在对弈中经常会遇到可能性很多而有没有规律的情况,这时可以对所有后续情况进行分析,选择当前对自己最有利的一中情况. 如果两方A,B进行对弈,计算现在局面的分数(对A和B),如果两方处于对立,那么一定在一方分数高的同时另一方分数会低( 每方都希望局面对自己有利),因此此时进计算A的分数,B的分数可以由A的分数反应(A高B低,A低B高),如果两个人足够 聪明(知道N局以后可能的 作者:SapphireStart 发表于 2015/03/07 21:23:11 原文链接 https://blog.csdn.net/SapphireStart/article/details/44120447 阅读:2806 继续阅读 >>


张续 15/03/07 21:23:11
#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 作者:SapphireStart 发表于 2015/03/06 13:02:46 原文链接 https://blog.csdn.net/SapphireStart/article/details/44098265 阅读:695 继续阅读 >>


张续 15/03/06 13:02:46
1.在图中一条边包含有两个结点。 2.一个结点可能相关n条边 因此我们可以把每一个结点包含的边放到同意集合之中(此处已链表存放,此时用顶点v作为集合的表示,即为链表表头) 其中一个边,和该边具有的两个结点作为集合中的一个元素。 x nx n ny y,编号为n的边的相关的两个结点x,y,nx是指向下一个与x相关的元素,ny是指向与y相关的元素 按照上述方法讲一个无向图划分为n个顶点为标识 作者:SapphireStart 发表于 2014/12/02 11:51:31 原文链接 https://blog.csdn.net/SapphireStart/article/details/41676507 阅读:593 继续阅读 >>


张续 14/12/02 11:51:31