题目:
两个整数共有的约数中最大的一个被称之为这两个整数的最大公约数。同样的这两个整数共有的约数中第二大的约数我们称之为这两个整数的次大公约数。现在给你两个正整数 a 和 b,请求出他们的次大公约数。注意:如果 a,b 只有一个公约数,则我们就说此时次大公约数不存在,这时你输出-1 即可。
输入:
4 6
输出:
1
代码:
#include<bits/stdc++.h>
using namespace std;
long long n,m,z;
int main(){
cin>>n>>m;
z=__gcd(n,m);
if(z==1)cout<<-1;
else
{
if(z%2==0)cout<<z/2;
else if(z%3==0)cout<<z/3;
}
return 0;
}
本文介绍了如何使用C++编程语言中的__gcd函数计算两个正整数a和b的次大公约数,当它们只有1个公约数时输出-1。
&spm=1001.2101.3001.5002&articleId=137747766&d=1&t=3&u=4244171d0c1b452e9b3c0012ea43d8af)
556

被折叠的 条评论
为什么被折叠?



