#include<iostream>
using namespace std;
int is_prime( int n )
{
if(n<2) return 0;
for(int i=2;i*i<=n;i++)
{
if(n%i==0)
{
return 0;
}
}
return 1;
}
int main()
{
int a,b,MAX=0,j=1;
cin>>a>>b;
for(int i=1;i*i<=a;i++)
{
if(a%i==0)
{
if(b%i==0)
{
if(is_prime(i)==1)
{
MAX=max(MAX,i);
}
}
int j=a/i;
if(a%j==0)
{
if(b%j==0)
{
if(is_prime(j)==1)
{
MAX=max(MAX,j);
}
}
}
}
}
cout<<MAX;
}
c++爱思创综合实战题目:最大公共素因子题解
于 2024-01-20 17:56:01 首次发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)