1876: [SDOI2009]SuperGCD
Time Limit: 4 Sec Memory Limit: 64 MB
Submit: 1813 Solved: 580
[Submit][Status][Discuss]
Description
Sheng bill有着惊人的心算能力,甚至能用大脑计算出两个巨大的数的GCD(最大公约 数)!因此他经常和别人比赛计算GCD。有一天S...
分类:
其他好文 时间:
2015-05-25 10:13:02
阅读次数:
113
原理是利用了辗转相除 int?gcd(int?x,int?y)
{
int?temp=0;
while(y)
{
????temp=y;
????y=x%y;
????x=temp;
}
return?x;
}
最小公倍数=x*y/gcd(x,y)...
分类:
其他好文 时间:
2015-05-21 15:44:44
阅读次数:
102
1.题目描述:点击打开链接
2.解题思路:本题通过观察发现,如果两个数a,b的最大公约数是G,那么G≤a且G≤b。因此直接令a=G即可。如何判断是否有解呢,只需要看是否满足gcd(G,L)==G就行了。如果满足,b=L。
3.代码:
#define _CRT_SECURE_NO_WARNINGS
#include
#include
#include
#include
#include
#i...
分类:
其他好文 时间:
2015-05-20 16:24:41
阅读次数:
133
http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=34870求n内的素数个数。 1 /* *********************************************** 2 Author : zch ...
分类:
其他好文 时间:
2015-05-19 18:17:50
阅读次数:
292
求两数最大公约数。【思路】1.常规:设求最大公约数算法为f(m,n),则f(m,n)=f(n,m%n)(m>n>0).当n==0时,返回m原理:x=ky+b,则f(x,y)=f(y,b)。缺点:除法或取余运算代价较大2.用减法替代取余。即f(m,n)=f(n,m-n)(m>n>0).缺点:增加了迭代...
分类:
其他好文 时间:
2015-05-19 10:13:12
阅读次数:
141
给定n,要求给出n个数,是的任意两数不互质,但所有数的最大公约数为1
很简单,所有数的最大公约数为1只需三个数最大公约数为1,假设a,b,c为素数,设第一个数为ab,第二个数为ac,第三个数为bc,则这三个数最大公约数已经为1,那么剩下的数只要满足与他们不互质即可,不妨令以后的数为 bc*i(i>1),则问题已解。
#include
#include
#include
#inclu...
分类:
其他好文 时间:
2015-05-18 09:14:04
阅读次数:
93
最小公倍数=两个整数的成绩 / 最大公约数求最大公约数的方法:(1)辗转相除法 1 #include 2 using namespace std; 3 int main() 4 { 5 int a,b,tmp,m; 6 cin>>a>>b; 7 m=a*b; 8 i...
分类:
编程语言 时间:
2015-05-15 01:18:58
阅读次数:
150
给定n*n的矩阵,需要查询任意子矩阵中所有数字的最大公约数。请给出一种设计思路,对矩阵进行预处理,加速查询。额外的空间复杂度要求O(n^2)以内。...
分类:
编程语言 时间:
2015-05-12 15:48:12
阅读次数:
176
分析:只需要求出最大公约数,然后枚举最大公约数的因子,把他们保存起来在求第K大的;因为是最大公约数的因子必然是两个数的因子。另外循环变量i和个数cnt都要声明为__int64,否则出错。
#include
#include
using namespace std;
__int64 gcd(__int64 x,__int64 y)
{
__int64 r;
while(y)
{
r=...
分类:
其他好文 时间:
2015-05-12 13:39:27
阅读次数:
135