Algorithm/etc
N! 표현법
DingCoDing
2021. 12. 27. 16:24
반응형
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main() {
int i, j, n, tmp;
scanf("%d",&n);
vector<int> ch(n+1);
for(int i=2; i <=n ; i++){
int tmp = i;
int mod = 2;
while(tmp!=1){
if(tmp%mod==0){
tmp/=mod;
ch[mod]++;
}
else{
mod++;
}
}
}
printf("%d! = ",n);
for(int i =1; i <=n; i++){
if(ch[i]>0){
printf("%d ",ch[i]);
}
}
return 0;
}
N!을 소인수 분해해서 표현
소인수분해는 2부터 n까지 나눠질 때까지 계속 돌면
편하게 할 수 있다.
반응형