//穷举法! /* 题目:求佩尔方程x*x-73*y*y=1的解。 */ #include<stdio.h> #include<math.h> int main(void) { int x,y; double t; for(y=1;y<=10000000;y++) { t=1.0+73.0*y*y; ...
分类:
编程语言 时间:
2017-06-10 12:30:21
阅读次数:
195
最长公共子序列问题LCS 问题描写叙述: 一个给定序列的子序列是在该序列中删去若干元素后得到的序列。确切地说。若给定序列X= { x1, x2,…, xm},则还有一序列Z= {z1, z2,…, zk}是X的子序列是指存在一个严格递增的下标序列 {i1, i2,…, ik},使得对于全部j=1,2 ...
分类:
其他好文 时间:
2017-06-09 14:04:25
阅读次数:
242
要求子集,有很现成的方法。N个数。子集的个数是2^N。每一个元素都有在集合中和不在集合中两种状态,这些状态用[0,pow(2,N)]中每一个数来穷举,假设这个数中的第i位为1,说明当前集合中包括源数组中的第i个数。 至于有没有反复的元素,大部分有反复元素的问题,都能够借助一个vis集合,里面存放全部 ...
分类:
其他好文 时间:
2017-06-05 17:59:12
阅读次数:
116
给定一个数X,他的兄弟数Y定义为:是由X中的数字组合而成。而且Y是大于X的数中最小的。比如,38276的兄弟数字为38627。给定X,求Y。 分析:这个题目当然有暴力的方法。列出全部的排列组合。然后然后找到大于X中,最小的Y。即。找到兄弟数字。 那有没有更好的方法呢?不想对全部情况进行穷举。就要想办 ...
分类:
其他好文 时间:
2017-06-01 16:43:18
阅读次数:
120
算法设计基本方法有什么好处?了解常见的算法设计方法以及它们之间的区别,有利于构建算法思维的广度,有充分的理论知识。当然,如果算法思维的深度再好的话,将来你见识的算法越多,天下之间所有的算法,都会融入到你的理论和实践当中。常见算法分类穷举法(暴力法,蛮力法)..
分类:
编程语言 时间:
2017-05-31 15:27:27
阅读次数:
184
生成密码的方式类似与时钟,末尾遍历完了第k位所有的字符,就让第k位的前一位到下一位字符,第k位回到第0个字符。 对python还不太熟悉,效率比较低,但是能破解简单的密码。 ...
分类:
其他好文 时间:
2017-05-27 22:31:42
阅读次数:
251
枚举法的本质就是从全部候选答案中去搜索正确的解,使用该算法须要满足两个条件: 1、能够先确定候选答案的数量。 2、候选答案的范围在求解之前必须是一个确定的集合。 枚举是最简单。最基础。也是最没效率的算法 枚举法长处: 1、枚举有超级无敌准确性。仅仅要时间足够。正确的枚举得出的结论是绝对正确的。 2、 ...
分类:
编程语言 时间:
2017-05-14 19:36:28
阅读次数:
204
在下最近在看《编程之美》,由此来实践一些书中有趣的小例子,宽度优先算法便是其中之一。以下内容纯属个人见解,如有错误,请指出~ 注:宽度优先算法是穷举方法的一种。 在下面的实践中,我会用连连看游戏的核心算法(即搜索两个点的最短路径并连接起来),来进行讲述。 连连看是一个2D平面游戏,我使用一个二维数组 ...
分类:
编程语言 时间:
2017-05-14 15:26:30
阅读次数:
135
MD5加密方法 MD5是一个安全的散列算法,输入两个不同的明文不会得到相同的输出值,根据输出值,不能得到原始的明文,即其过程不可逆;所以要解密MD5没有现成的算法,只能用穷举法,把可能出现的明文,用MD5算法散列之后,把得到的散列值和原始的数据形成一个一对一的映射表,通过比在表中比破解密码的MD5算 ...
分类:
其他好文 时间:
2017-05-09 11:24:26
阅读次数:
97
//2014.10.17 01:19 //题意: //先输入一个数N,然后分块输入,每块输入每次2个数,n,m,直到n,m同一时候为零时 //结束,当a和b满足题目要求时那么这对a和b就是一组 //注意: //每一块的输出中间有一个回车 A Mathematical Curiosity Time L ...
分类:
移动开发 时间:
2017-05-08 10:10:59
阅读次数:
175