T 了 3 个点
查看原帖
T 了 3 个点
946233
ChuYilin2011楼主2023/11/18 21:56
#include <bits/stdc++.h>
//#define int long long
using namespace std;
typedef long long ll;
const unsigned int Inf=0x3f3f3f3f;
const unsigned int mod=1e9+7;
const unsigned N=1e5+5;
ll n;
bool f=0;
signed main(){
	cin>>n;
	ll nnnnnnnnnn=n;
	for(int i=2;i*i<=nnnnnnnnnn;i++){
		if(n%i)continue;
		if(f)printf(" * ");
		int cnt=0;
		while(~(n%i)==EOF)n/=i,cnt++;
		printf("%d",i);
		if(cnt^1)printf("^%d",cnt);
		f=1;
	}
	if(n^1){
		if(f)printf(" * %d",n);
		else printf("%d",n);
	}
	return 0;
}

#2 #6 #9 TLE,不知道为什么。

2023/11/18 21:56
加载中...