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;
}