TLE,0tps,求调
查看原帖
TLE,0tps,求调
1209829
Lhm2010楼主2024/12/1 20:30
#include <bits/stdc++.h>
using namespace std;
int power[50],base[50];
int main() {
	int n,cnt=0;
	cin>>n;
	for(int i=2; i*i<=n; i++) {
		if(n%i==0) {
			power[++cnt]=i;
		}
		while(n%i==0) {
			n=n/i;
			base[cnt]++;
		}
	}
	if(n!=1) {
		power[++cnt]=n;
		base[cnt]=1;
	}
	if(base[1]==1) {
			printf("%d",power[1]);
	} 
	else {
		printf("%d^%d",power[1],base[1]);
	}
	for(int i=2; i<=cnt; i++) {
		if(base[i]==1) {
			printf(" * %d",power[i]);
		} 
		else {
			printf(" * %d^%d",power[i],base[i]);
		}
	}
	return 0;
}
2024/12/1 20:30
加载中...