点灯游戏:点灯游戏算法实现代码

点灯游戏个十分有趣智力游戏,他规则是这样:有行N行N列灯,开始时全部是灭,当你点击其中盏灯是他上下左右(若存在话)状态全部改变,现在要求你在限定时间内以最少地步数,将全部灯点亮. 现在,我们以某盏灯为研究对象,显然,当此灯状态被改变奇数次后,灯被点亮.反的,被点击偶数次,灯则维持原来熄灭状态不变.而促使灯状态改变事件不外乎其上下左右(若存在话)被点击.推而广的,只要所有灯状态被改变奇数次,则可保证... [阅读全文]

des算法代码:m选n算法实现代码

Cmn高中数学概率论基础 为了解决一个算法题目中的一个小功能自己写的........ voidcnm1(int*a,intstart,intn,intm) { if(start==n) { for(inti=0;in;++i) couta[i]; coutendl; return; } ints=0; if(start==0) s=a[0]+1; else s=a[start-1]+1; for(... [阅读全文]

素数算法:素数产生算法的代码

Solovag-Strasson RobertSolovag和VolkerStrasson开发了一种概率的基本测试算法。这个算法使用了雅可比函数来测试p是否为素数: (1)选择一个小于p的随机数a。 (2)如果gcd(a,p)1,那么p通不过测试,它是合数。 (3)计算j=a^(p-1)/2modp。 (4)计算雅可比符号J(a,p)。 (5)如果jJ(a,p),那么p肯定不是素数。 (6)如果j... [阅读全文]

lcs算法:LCS问题算法代码

LCS问题就是求两个串最长公共子串问题解法就是用个矩阵来记录两个串中所有位置两个的间匹配情况若是匹配则为1否则为0然后求出对角线最长1序列其对应位置就是最长匹配子串位置. 下面是串21232523311324和串312123223445匹配矩阵前者为X方向后者为Y方向不难找到红色部分是最长匹配子串通过查找位置我们得到最长匹配子串为:212320 0 0 1 0... [阅读全文]

des算法代码:内存移动算法代码

对于有K个元素的数组int a[k]={.......};写一个高效算法将数组内容循环左移m位,比如:int a[6]={1,2,3,4,5,6},循环左移3位后得到结果{4,5,6,1,2,3}. 要求:1.不允许另外申请数组空间,但可以申请少许变量; 2.不允许采用每次左移。 最直观的想法,就是从第一个元素开始,把他一步移动到最终目的位置,而该位置原有的元素的值取出,移动到它的新位置。递归进行... [阅读全文]

素数算法:素数的算法代码

素数就是质数。它除了能表示为它自己和1的乘积以外,不能表示为任何其它两个整数的乘积。例如,15=3*5,所以15不是素数;又如,12=6*2=4*3,所以12也不是素数。另一方面,13除了等于13*1以外,不能表示为其它任何两个整数的乘积,所以13是一个素数。 实现代码如下: C++Code: VC++6.0SP6+WindowsXP #include\"iostream.h\" #include... [阅读全文]
1 共1条 分1页