样例是过的,不知道哪里WA了,求助!
查看原帖
样例是过的,不知道哪里WA了,求助!
744820
Eternal_SZC楼主2023/8/14 11:28
#include<bits/stdc++.h>
using namespace std;
#define ll long long
bool pzs(ll n){
	if(n==1) return false;
	for(ll i=2;i*i<=n;i++){
		if(n%i==0) return false;
	}
	return true;
}
template <typename TM>
void in(TM &n){
	char c=getchar();
	int f=1;
	while ((c>'9' || c<'0') && c!='-') c=getchar();
	if(c=='-') f=-1, c=getchar();
	for(n=0; c>='0'&&c<='9'; c=getchar()) n=n*10+c-'0';
	n*=f;
}
int main(){
	ll t;
	in(t);
	while(t--){
		ll n;
		in(n);
		if(pzs(n)){
			printf("%d\n",n);
			continue;
		}
		for(ll i=2;i<=n;){
			if(pzs(n)){
				printf("%d\n",n);
				break;
			}
			if(pzs(i)&&n%i==0){
				n/=i;
				printf("%d ",i);
				i=2;
				continue;
			}
			i++;
		}
	}
	return 0;
} 
2023/8/14 11:28
加载中...