题目要求:给你两个任意的正整数,请输出他们所有的公因数
样例输入:10,35
样例输出:1
5
很简单,逐个筛查就可以了,这里使用for循环
#include <bits/stdc++.h>
//万能头文件
using namespace std;
int main()//主函数
{
int n,m;
cin>>n>>m;
//定义,输入
int k=m;
if (k>=n)
{
k=n;
}
//减小时间复杂度,从n和m中选小的数进行比较
cout<<1<<endl;
//任意两个正整数,1肯定是它们的因数之一
for (int i=2;i<=k;i++)//筛选条件,1已经输出了,从2开始筛查
{
if (n%i==0)//是n的因数
{
if (m%i==0)//是m的因数
{
cout<<i<<endl;//输出这个数
}
}
}
return 0;//完美收场,撒花
}