#include<stdio.h>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
//freopen("input.txt", "rt", stdin);
int n, i, j, tmp;
scanf("%d", &n);
vector<int> ch(n+1);
for(i=2; i<=n; i++){
tmp=i;
j=2;
while(1){
if(tmp%j==0){
ch[j]++;
tmp=tmp/j;
}
else j++;
if(tmp==1) break;
}
}
printf("%d! = ", n);
for(j=2; j<=n; j++){
if(ch[j]!=0) printf("%d ", ch[j]);
}
return 0;
}
'코딩테스트' 카테고리의 다른 글
1부터 N 까지 각각 / 3의 갯수는? (Small) (0) | 2024.09.18 |
---|---|
N! 에서의 0의 갯수 (소인수분해 응용) (0) | 2024.09.18 |
마라톤 코드 (0) | 2024.09.18 |
석차 구하기 (브루트포스) (0) | 2024.09.18 |
유쾌한 점퍼 Jolly Jumpers (0) | 2024.09.18 |