Description我们知道,从区间[L,H](L和H为整数)中选取N个整数,总共有(H-L+1)^N种方案。小z很好奇这样选出的数的最大公约数的规律,他决定对每种方案选出的N个整数都求一次最大公约数,以便进一步研究。然而他很快发现工作量太大了,于是向你寻求帮助。你的任务很简单,小z会告诉你一个整...
分类:
其他好文 时间:
2015-12-05 14:31:04
阅读次数:
160
题目描述 Description输入二个正整数x0,y0(2y/x如果i是y/x的因子然后j=(y/x)/i再判断i和j是否互质因为每次得到的两个数中比较小的就是i,比较大的数是j,i是小于根号(y/x)的,j就是大于根号(y/x)因此不会重复计算,那算到一次,答案就累加2。代码:#includeu...
分类:
其他好文 时间:
2015-11-26 22:39:57
阅读次数:
164
---恢复内容开始---最近在看一本算法的书。讲的都是一些基本的问题,并没有涉及很复杂的算法,或者说这本书更看重技巧。其中开篇就讲了最大公约数的算法,觉得有可取之处,和大家分享一下。提到最大公约数我们最先想到的一定是辗转相除法。没错,永远不要蔑视我们的祖先,他们的智慧是无穷的。(扯远了,嘿嘿)我们都...
分类:
其他好文 时间:
2015-11-24 22:04:42
阅读次数:
237
求两正整数的最大公约数,用辗转相除法。 1 #include 2 3 #define swap(a,b,type) do{ type t; t=a; a=b; b=t; }while(0) 4 5 int gcd(int a,int b) 6 { 7 int t; 8 as...
分类:
其他好文 时间:
2015-11-19 18:30:42
阅读次数:
148
//辗转相除法求最大公约数#includeusing namespace std;int main(){int m,n;cin>>m>>n;int k=m%n;while(k){ m=n;n=k;k=m%n;}cout<<"最大公约数是"<<n<<endl;return n;}
分类:
其他好文 时间:
2015-11-16 19:09:03
阅读次数:
111
http://www.2cto.com/kf/201109/105758.html算法大全(C,C++)一、数论算法1.求两数的最大公约数function gcd(a,b:integer):integer;beginif b=0 then gcd:=aelse gcd:=gcd (b,a mod b...
分类:
编程语言 时间:
2015-11-11 23:59:00
阅读次数:
481
1.求两数的最大公约数function gcd(a,b:integer):integer; begin if b=0 then gcd:=a else gcd:=gcd (b,a mod b); end ;2.求两数的最小公倍数function lcm(a,b:intege...
分类:
编程语言 时间:
2015-11-06 11:12:48
阅读次数:
233
求两个数的最大公约数:用辗转相除法#define_CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>intmain(){ intnum1=0; intnum2=0; scanf_s("%d%d",&num1,&num2); while(num1%num2) { intr=num1%num2; num1=num2; num2=r; } printf("%d\n",num..
分类:
其他好文 时间:
2015-11-05 00:53:41
阅读次数:
188
卡了~卡了就写不下去了~其实是不会~大牛提醒,答案必定是SUM的因子~细细想了好久,才想通~差距~因为是所有的和GCD,所以GCD必定整除SUM。。然后,枚举这些因子,统计前缀和的MOD,看有多少个,最多的便是以它为最大公约数的段数最多的情况。如果存在以它为GCD更多的段数的情况,必定会在前缀和统计...
分类:
其他好文 时间:
2015-11-04 00:29:03
阅读次数:
208
求最大公约数的欧几里得算法是一个递归算法,据说出现在公元前375年,或许是最早的递归算法实例:gcd(x, y) = x ; (y = 0) = gcd(y, x mod y); (y > 0)注:mod是求模,相当于程序中的%。int gcd(int x, int...
分类:
其他好文 时间:
2015-10-30 15:23:36
阅读次数:
140