Submission
Status:
PPPPTxPPTx
Score: 60
User: devilpoohs
Problemset: แยกตัวประกอบ
Language: cpp
Time: 1.085 second
Submitted On: 2024-11-10 22:00:50
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,i=2;
int count=0;
cin >> n;
vector<bool> vec(n,true);
vector<int> hero;
for(int i=2;i<=sqrt(n);i++){
for(int j=i*i;j<=n;j+=i){
vec[j]=false;
}
}
for(int i=2;i<=n;i++){
if(vec[i]){
hero.push_back(i);
}
}
vector<int>::iterator it=hero.begin();
while(n!=1){
if(n%*it==0){
// cout << i <<' ' ;
n/=*it ;
count++;
if(n==1){
cout << *it<<'^'<<count<<" ";
}
}else{
if(count!=0){
cout << *it<<'^'<<count<<" ";
}
count=0;
it++;
}
}
return 0;
}