0dpsC++求助!
查看原帖
0dpsC++求助!
786213
TC1234楼主2023/12/13 09:19
#include <iostream>
#include <cmath>
using namespace std;
int main(){
	unsigned long long a,a1;
	cin>>a1;
	a=a1;
	long long p[a+1]={};
	long long s=1,f=0,fl=0;
	while (f!=1){
		f=1;
		for (long long n=2;n<=a;n++){
			if (a%n==0){
				a/=n;
				f--;
				fl++;
				p[n]++;
				break;
			}
		}
	}
	p[a]++;
	if (!fl){
		cout<<a1;
		return 0;
	}
	int f2=0;
	for (long long i=2;i<=a1;i++){
		if (p[i]){
			if (f2){
				cout<<"*";
			}else{
				f2++;
			}
			if (p[i]>1){
				cout<<i<<"^"<<p[i];
			}else{
				cout<<i;
			}
		}
	}
	return 0;
}
2023/12/13 09:19
加载中...