Q条
查看原帖
Q条
1210103
Program_A2楼主2025/2/2 21:50

rt,紫色一片

#define ll long long int
#include "bits/stdc++.h"
using namespace std;
long long int a[500000],b[5000],cnt=1;
long long x(long long y){
	for(ll i=2;i<=sqrt(y);i++){
		if(y%i==0)return i;
	}
	return y;
}
int main(){
	long long n;
	cin>>n;
	while(n!=1){
		ll sum=x(n);
		a[sum]++;
		if(b[cnt-1]!=sum){
			b[cnt]=sum;
			cnt++;
		}
		n/=sum;
	}
	sort(b+1,b+cnt);
	cnt--;
	for(ll i=1;i<=cnt;i++){
		if(a[b[i]]>=2)cout<<b[i]<<'^'<<a[b[i]];
		else cout<<b[i];
		if(i!=cnt){
			cout<<" * ";
		}
	}
   return 0;
}
2025/2/2 21:50
加载中...