上一页 1 ··· 8 9 10 11 12 13 14 下一页
摘要: RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然秘密密钥SK是由公开密钥PK决定的,但却不能根据PK计算出SK。准备工作:1.选择两个质数p, q2.令N = pq, e 为 与(p-1)(q-1)互质的数 (为了快速解密,若符合条件一般选择最小的3) (N, e)为公钥3.令d为e mod (p-1)(q-1)的逆。(N,d)为私钥现在就得到3个数,N e d。设 阅读全文
posted @ 2013-04-13 10:35 Norcy 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 耐心的看下去终究会懂的。♦ 我们规定gcd(a,0)=a♦欧几里德算法中需要明确的是,gcd(a,b) = gcd(b,r)证明:设x=gcd(a,b),那么b能整除以x(即b/x没有余数,觉得"整除以"比"整除"更直观,下同)。∵a=bq+r∴r=a-bq∴r能整除以x∴x为b,r的公约数(没有证明是最大)假设y为gcd(b,r),所以x≤y(y是最大的约数!)显然,b能整除以y∵a=bq+r∴a能整除以y.∴y是a,b的约数∴y≤x∴x=y=gcd(b,r)∴gcd(a,b) = gcd(b,r)求两个数的最大公约数——辗转相除法(欧几里德算法) 1 阅读全文
posted @ 2013-03-23 21:50 Norcy 阅读(330) 评论(1) 推荐(0) 编辑
摘要: 站在acm的角度上看,《算法概论》这本书上感觉废话好多。始终觉得学算法的最佳途径就是做题,而不是单纯的看书看伪算法。实现才是王道。快速幂取模,其实也是以前写过的二分求幂,或离散课上的同余幂。以前写的代码版本太乱,现在总结一下,以便以后碰到这类问题能直接对症下药。求b^e mod m,b,e,m都是比较大的整数。递归算法: 1 //快速幂取模 2 int modexp(int b, int e, int m) //b是底数,e是指数,m是模 3 { 4 if (e == 0) 5 return 1; 6 7 int temp = modexp(... 阅读全文
posted @ 2013-03-23 17:48 Norcy 阅读(390) 评论(0) 推荐(0) 编辑
摘要: (1)设置热点:netsh wlan set hostednetwork mode = allow ssid = cy key = 00000000(2)开启热点:netsh wlan start hostednetwork(3)关闭热点:netsh wlan set hostednetwork mode = disallow运行-cmd-输入以上语句即可开启(2)或关闭(3)win7热点。第一次使用需要先输入(1)。当然,也可以保存上述语句为批处理文件(.bat)实现一键开启/关闭功能。懒人请点我下载如果遇到手机可以连上热点但是不能上网的情况请注意,直接上图!如果设置本地网络共享给无线网络连 阅读全文
posted @ 2013-03-06 20:10 Norcy 阅读(5069) 评论(0) 推荐(0) 编辑
摘要: DOS的命令有很多,这是最基础的DOS命令,先记住这些。1 dir无参数:查看当前所在目录的文件和文件夹。/s:查看当前目录已经其所有子目录的文件和文件夹。/a:查看包括隐含文件的所有文件。/ah:只显示出隐含文件。/w:以紧凑方式(一行显示5个文件)显示文件和文件夹。/p:以分页方式(显示一页之后会自动暂停)显示。|more:前面那个符号是“\”上面的那个,叫做重定向符号,就是把一个命令的结果输出为另外一个命令的参数。more也是一个命令,dir /w |more得到的结果和dir /w /p的结果是一样的。其他的参数大家可以用:dir/?查看。(注:msdos下有一些不能用,如|more) 阅读全文
posted @ 2013-03-01 20:16 Norcy 阅读(372) 评论(0) 推荐(0) 编辑
摘要: A:生成树B:未被访问过的点的集合pre[i]:生成树中i的前驱节点。A中的dis[i]:生成树中包含点i的边的长度。B中的dis[i]: i到A的最短距离vis[]:标记是否遍历过(是否属于A)Prim算法的思想1.任选一点,不妨选择第一个点,加入生成树A。2.遍历B,寻找一点u,使其到A的距离最小(就是A中也找了一点v)。添加u到A中(vis)。记录这条边及其权值(pre,dis)。3.更新与u相连的点的dis和pre4.循环直到遍历所有可达的点。View Code #include <iostream>#include <climits> using namesp 阅读全文
posted @ 2013-02-07 10:29 Norcy 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 哈密顿回路好多,其实不是很难,但是看了一天了。。看一会睡一会,什么状态啊。。View Code /*【题目来源】http://poj.org/problem?id=2438【题目分析】有敌对关系的小朋友,不能坐在一起。最后围成一个圈,吃饭。。。将小朋友看成点,有敌对关系的看成没有边,最后构成一个回路。哈密顿回路。 【小小总结】 哈密顿回路充分条件:无向连通图中任意2点度数之和大于等于顶点数,则必定存在哈密顿回路。 思路分析: 1.任意找两个相邻的节点S和T,在它们基础上扩展出一条尽量长的没有重复节点的路径。也就是说,如果S与节点v相邻,而且v不在路径S->T上,则可以把该路径变成v-&g 阅读全文
posted @ 2013-01-25 20:31 Norcy 阅读(5160) 评论(1) 推荐(0) 编辑
摘要: View Code /*【题目来源】http://poj.org/problem?id=2230【题目分析】输入顶点数n,边数m,输入m条边,无向图,从顶点1出发,每条边正反向走1次,求点的遍历顺序。多个答案输出一个就行。【思路分析】欧拉回路问题。总结,求解欧拉回路方法:构造邻接表,从顶点1开始,以点深搜,搜到不能再搜,搜到天荒地老,最后输出点既是欧拉回路。(当然也可以用链式前向星)*/#include <iostream>#include <vector>using namespace std;#define Max 10001vector<int> v[ 阅读全文
posted @ 2013-01-24 16:30 Norcy 阅读(284) 评论(0) 推荐(0) 编辑
摘要: /*【题目来源】http://acm.whu.edu.cn/land/problem/detail?problem_id=1110【题目分析】几张图片叠在一起,给出堆叠后的情况,要求出所有可能的从下到上的堆叠顺序。【思路分析】 1.题目已经很明确的告诉每个边框的每条边,至少会有一个字母露在外面所以遍历整张图,确定每个边框的范围。 只需确定左上角和右下角即可。2.根据每个边框的范围再遍历,若应该出现A的位置出现了B,那么B一定在A上面。这样各个边框的上下顺序就求出来。若B在A上面,那么记录A->B。3.拓扑排序4.要求输出所有能情况且按字母顺序输出。那么只要按照字母顺序使用DFS(递归)来 阅读全文
posted @ 2013-01-22 21:26 Norcy 阅读(1262) 评论(0) 推荐(0) 编辑
摘要: 前几个星期落下的终于要开始一一补上啦~~这个寒假坚持把这本书看完!机考最后一道题就这么简单,无语,早知道先做这道好了。最简单的拓扑排序应用,判断一个有向图是不是无环的。标准的拓扑排序代码,《图论与应用》里代码风格不是很喜欢,所以还是觉得这个比较好看一点。View Code /* (1)从有向图中选择一个没有前驱(即入度为0)的顶点并且输出它. (2)从网中删去该顶点,并且删去从该顶点发出的全部有向边. (3)重复上述两步,直到剩余的网中不再存在没有前趋的顶点为止.*/#include <iostream>#include <cstring>using namespace 阅读全文
posted @ 2013-01-21 13:44 Norcy 阅读(266) 评论(0) 推荐(0) 编辑
上一页 1 ··· 8 9 10 11 12 13 14 下一页