题意:求a!和b!的最大公共因数,我刚开始没想明白,后来才明白的,举个例子,5和6吧,6!=5!*6,这样就明白了吧,大的阶乘一定是小的阶乘再乘其它不为0的数,这样就转化为求小的阶乘。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<cstdlib>
using namespace std;
typedef long long ll;
int main()
{
int a,b;
cin>>a>>b;
a=min(a,b);
int ans=1;
for(int i=2;i<=a;i++)
ans*=i;
cout<<ans<<endl;
return 0;
}
本文介绍了一个简单的算法问题,即求两个数阶乘的最大公因数,并给出了一种有效的解决方案。通过寻找较小数值的阶乘来快速得出结果。
1087

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



