社区讨论

0分 感觉思路应该是正确的 但是不对……麻烦大佬执教 感谢!

P2043质因子分解参与者 3已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@lo7skkwe
此快照首次捕获于
2023/10/27 07:04
2 年前
此快照最后确认于
2023/10/27 07:04
2 年前
查看原帖
CPP
#include <iostream>
using namespace std ;
bool isPrime(int x)
{
	for(int i=1;i*i<=x;i++)
	{
		if(x%i==0)
		{
			return false;
		}
	}
	return true ;
}
int main()
{
	long long num1[1000],num2[1000] ;
	long long  n,sum=0,k=1;
	long long ans=1 ;
	cin>>n ;
	for(int e=1;e<=n;e++)
	{
		ans*=e ;
	}
	for(int i=1;i*i<=ans;i++)
	{
		if(ans==1) break ;
		else if(isPrime(i))
		{
			num2[k]=i ;
			while(ans%i==0)
			{
				ans/=i ;
				sum++ ;
			}
			num1[k]=sum ;
			sum=0 ;
			k++ ;
		}
	}
	for(int j=1;j<=k;j++)
	{
		cout<<num2[j]<<" "<<num1[j]<<endl ;
	}
	return 0 ;
}

回复

2 条回复,欢迎继续交流。

正在加载回复...