10 2014 档案
摘要:http://blog.csdn.net/huahuahailang/article/details/8803939题目:我们知道:1+2=3; 4+5=9; 2+3+4=9;等式左边都是两个以上连续的自然数相加,那么是不是所有的整数都可以写成这种形式呢?问题1. 写一个程序,对于一个64位正整数,...
阅读全文
摘要:先求差值最大的:1、找出最大值和最小值 然后做差, 每次比较相邻的两个数(比如先0,1 然后2,3),然后每次比较记录下最大和最小的差值,可以比较1.5N次得到结果,和分为奇数偶数位比较一样的复杂度2、由于抽屉原来,设最大的值和最小的值为maxV和minV,那么最大差值不会超过delta = (ma...
阅读全文
摘要:方法一:利用特征方程(线性代数解法)斐波那契 f(n+1) = f(n)+f(n-1)线性递推数列的特征方程为: X^2=X+1 解得 X1=(1+√5)/2, X2=(1-√5)/2. 则F(n)=C1*X1^n + C2*X2^n ∵F(1)=F(2)=1 ∴C1*X1 + C2*X...
阅读全文
摘要:用visit数组记录出现过的地方 dp的时候注意一个问题就可以: abcdacbd来看看如果遇到重复的该怎么处理: 遇到第二个a前都没有问题,第二次遇到a,然后肯定是更新a的位置的dp[4] = 4-0 = 4, 第二次遇到c, 更新c的位置为dp[5] = 5-2 = 3; 然后问题来了,第二次遇
阅读全文
摘要:a先把石头分堆,然后bababa的顺序取石头,只能取其中一堆中的若干颗(不能不取)这种问题先考虑 先取者的胜态问题(1,1)先取者必败,所以(1,x),当x>1时可以转换为(1,1)使后取的人必败,所以必胜(2,2),必败。。。所以发现(x,x)是先取者的必败态,也就是a的必胜态,这是偶数的情况如果...
阅读全文
摘要:两个人取一排石头,轮流取,可以取一个,也可以取相邻的两个。如果5被取走了,4和6不算相邻。假设a先取1 y2 y3 y 先取中间,b只能取一个,所以必胜4 y 取中间两个,变为3的情况5 取中间一个,然后b取什么后,a也取对称的,所以必胜...所以先取必胜如果为奇数,取中间的一个,如果是偶数,取中间...
阅读全文
摘要:就是求解冲突问题,只要找出冲突条件就好了http://www.cnblogs.com/qinyg/archive/2012/05/21/2512353.html#3045146问题描述:八皇后问题是十九世纪著名数学家高斯于1850年提出的。问题是:在8*8的棋盘上摆放8个皇后,使其不能互相攻击,即任...
阅读全文
摘要:安排会面问题,有几个研究组,不同的学生各自有自己感兴趣的若干个组想去看,每个组讨论时间为t,求总的最小的时间。1、枚举颜色的可能 o((n-1)^n)2、进行k着色,从1开始,看可能与否,不行把k加1然后再判断3、韦尔奇。鲍威尔法对图G进行着色a)将图G中的结点按度数的递减次序排列b)用第一种颜色对...
阅读全文
摘要:奶牛分配(stall4.pas/in.out)描述农夫约翰上个星期刚刚建好了他的新牛棚,他使用了最新的挤奶技术。不幸的是,由于工程问题,每个牛栏都不一样。第一个星期,农夫约翰随便地让奶牛们进入牛栏,但是问题很快地显露出来:每头奶牛都只愿意在她们喜欢的那些牛栏中产奶。上个星期,农夫约翰刚刚收集到了奶牛...
阅读全文
摘要:使用select来选择,,,选择就响应真是花了好大的功夫。。。。你妹。。。在controller设置变量来储存选择后的值。。。js中如果select选择为空那么传入的值是””而不是nullselectedIndex的值都是数字,从0开始,而不是option的值controller#sdn的网络流量监...
阅读全文
摘要:n&(n-1) n&(-n)n&(n-1)作用:将n的二进制表示中的最低位为1的改为0,先看一个简单的例子:n = 10100(二进制),则(n-1) = 10011 ==》n&(n-1) = 10000可以看到原本最低位为1的那位变为0。弄明白了n&(n-1)的作用,那它有哪些应用?1. 求某一...
阅读全文
摘要:在n!中末尾有几个0取决于n!中5的个数(2肯定比5多)所以遍历从1到n的数,看总共有几个5即可for i in 1..N do j = i; while(j % 5 == 0) ++ret; j /= 5; endend有个nb的方法:z = [N...
阅读全文
摘要:1、100!有多少位要计算n!的位数,很容易嘛:X=log10(n!)=log10(1)+log10(2)+log10(3)+……+log10(n-1)+log10(n);然后对X取整,再加1,n!的位数了!计算得到:100阶乘位数是:158100!=933262154439441526816992...
阅读全文
摘要:1、排序后去出前k个,o(n*log(n)) 如果kk,说明只要继续在大的部分找就可以了, 如果大的部分的个数 delta){ midv = minv + (maxv - minv)*0.5; if(f(a,N,midv) >...
阅读全文
摘要:先有一个概念:部分和:ps[i][j]表示从(0,0)到(i,j)这个矩形的和,那么有ps[i][j] = ps[i-1][j]+ps[i][j-1]-ps[i-1][j-1]+a[i][j],从而可以在o(m*n)的时间内求出ps这样有了ps后,就可以在o(1)时间内求出(i,j)到(p,q)这个...
阅读全文
摘要:http://www.cnblogs.com/jackge/archive/2013/04/22/3034968.html有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把...
阅读全文
摘要:要知道,最大和最小是相对的,用总和减去最小的就能得到最大的。 编程之美的题目没看懂,然后参考了http://zhangpeizhen.blog.163.com/blog/static/231873112201431784024921/两种情况1、普通数组,可以o(n)求最大子串和。2、如果是环状...
阅读全文
摘要:[-2,2,3,-1]的最大字段和是[2,3]/*动态规划算法:**b[j]=max{a[i]+ +a[j]},10时b[j]=b[j-1]+a[j],否则b[j]=a[j]。故b[j]的动态规划递归式为:**b[j]=max(b[j-1]+a[j],a[j]),10) b+=...
阅读全文
摘要:n^2的解法对于a[i]来说,j in 0..i-1,如果a[i]>a[j],则dp[i] = dp[j]+1,否则dp[i]至少为1For i in 0..n For j in 0..i-1 If(a[i] > a[j]) dp[i] = max(dp[i],dp[j]+1); dp[i...
阅读全文
摘要:class MysqlTest #Code here require "mysql" def testMysql dbc=Mysql.real_connect('localhost','root','123','Ivic_Portal') res=dbc.query('select...
阅读全文
摘要:Ubuntu和debian 的 shell 默认安装的是 dash,而不是 bash。运行以下命令查看 sh 的详细信息,确认 shell 对应的程序是哪个:$ls -al /bin/shdash 比 bash 更轻,更快。但 bash 却更常用。如果一些命令、脚本等总不能正常执行,有可能是 das...
阅读全文
摘要:轻松构建自己的OpenVPN家庭服务器(VMware+Amahi)http://os.51cto.com/art/201107/277146_all.htm 这是教程不用安装第一步的,直接把下载下来的镜像安装,这就是一个虚拟机https://www.amahi.org/users 这下面的用户名是w...
阅读全文