5 条题解
-
0刘周函@吴江区实验初级中学 (Andy0128) LV 9 @ 2021-02-01 11:39:04
#include <iostream> using namespace std; int gcd(int a,int b); int main() { int a,b; cin>>a>>b; cout<<gcd(a,b)<<endl<<a*b/gcd(a,b); return 0; } int gcd(int a,int b) { return a%b==0?b:gcd(b,a%b); }
-
02021-01-27 20:58:30@
#include<bits/stdc++.h>
using namespace std;
int gcd(int a,int b)
{
if(a%b==0) return b;
return gcd(b,a%b);
}
int lcm(long c,long d)//数据类型要改成long,不然会爆内存
{
for(int i=10000000;i>=0;i--)//这里的i只要取大点的数就行了
if(c%i==0&&d%i==0)
return (c*d)/i;
}
int main()
{
int a,b;
cin>>a>>b;
cout<<gcd(a,b)<<endl<<lcm(a,b)<<endl;
return 0;
} -
02021-01-25 17:19:14@
#include<iostream> using namespace std; int main() { int a,b; cin>>a>>b; //算最大公约数(辗转相除) int aa=a,bb=b,cc=aa%bb; while(cc)//cc为0 -> 结束循环 { aa=bb; bb=cc; cc=aa%bb; } cout<<bb<<"\n"<<a/bb*b; return 0; }
-
02019-11-19 14:23:53@
#include<stdio.h>//最大公约数,最小公倍数
int main ()
{
int n,m,i,r,j;
scanf("%d%d",&n,&m);
j=1;
r=1;
while(j<=m&&j<=n)
{
if(m%j==0&&n%j==0)
r=j;
j++;
}
i=m/r*n;//注意:要先除后乘,这样可计算量会增大
printf("%d\n%d",r,i);
return 0;
}
-
02019-10-20 16:02:01@
#include<iostream> using namespace std; int yue_shu(int a,int b) { int tmp; if(a<b) { tmp=a; a=b; b=tmp; } return b==0?a:yue_shu(b,a%b); } int bei_shu(int a,int b) { return a*b/yue_shu(a,b); } int main() { int x,y; cin>>x>>y; cout<<yue_shu(x,y)<<endl; cout<<bei_shu(x,y)<<endl; system("pause"); return 0; }
- 1
信息
- 难度
- 7
- 分类
- (无)
- 标签
- 递交数
- 1480
- 已通过
- 256
- 通过率
- 17%
- 被复制
- 9
- 上传者