- 博客(6)
- 收藏
- 关注
原创 数论待解问题
Given N, print the largest number that can be achieved by taking gcd (greatest common divisor) of any two i and j where i ̸= j and 1 ≤ i,j ≤ N. Input First line of input will contain the number of te
2017-01-24 18:21:32 222
转载 欧几里得与扩展欧几里得
欧几里德算法 欧几里德算法又称辗转相除法,用于计算两个整数a,b的最大公约数。 基本算法:设a=qb+r,其中a,b,q,r都是整数,则gcd(a,b)=gcd(b,r),即gcd(a,b)=gcd(b,a%b)。 第一种证明: a可以表示成a = kb + r,则r = a mod b 假设d是a,b的一个公约数,则有 d|a, d|b,而
2017-01-24 18:20:02 168
转载 快速幂取模
在Miller Rabbin测试素数,就用到了快速幂取模的思想。这里总结下。 求a^b%c(这就是著名的RSA公钥的加密方法),当a,b很大时,直接求解这个问题不太可能 算法1:利用公式a*b%c=((a%c)*b)%c,这样每一步都进行这种处理,这就解决了a^b可能太大存不下的问题,但这个算法的时间复杂度依然没有得到优化 代码如下: [cpp] view
2017-01-24 18:17:03 148
转载 拓扑结构
本文将从以下几个方面介绍拓扑排序: 拓扑排序的定义和前置条件和离散数学中偏序/全序概念的联系 典型实现算法 Kahn算法基于DFS的算法 解的唯一性问题 实际例子 取材自以下材料: http://en.wikipedia.org/wiki/Topological_sorting http://en.wikipedia.org/wiki
2017-01-24 18:10:42 547
转载 1月20号测试
Given a positive integer N, you should output the most right digit of N^N. InputThe input contains several test cases. The first line of the input is a single integer T which is the number of tes
2017-01-20 20:08:03 213
转载 最短路的方法总结
1.Dijkstra算法 #include #include #define Max 999999 int map[1005][1005]; int dis[1005]; void dijkstra(int n) { int visit[1001]={0}; int min,i,j,k; visit[1]=1; for(i=1;i {
2017-01-18 13:24:52 426
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人