Pagini recente » Cod sursa (job #1061976) | Cod sursa (job #2916651) | Cod sursa (job #1256526) | Cod sursa (job #1199470) | Cod sursa (job #586286)
Cod sursa(job #586286)
#include <cstdio>
#include <cmath>
int n, a, s;
int x[4005];
int main() {
freopen("nummst.in", "r", stdin);
freopen("nummst.out", "w", stdout);
int i, a;
scanf("%d\n", &n);
for(a = n / 2; a >= 2; --a)
if(n % a == 0)
break;
n /= a;
int nr = 0;
int j;
for(i = 2; i <= n; ++i){
int r = sqrt(i);
int sw = 1;
for(j = 2; j <= r; ++j)
if(i % j == 0) {
sw = 0;
break;
}
if(sw)
x[++nr] = i;
}
int sol[4005], d = 0;
for(i = 1; i <= nr; ++i){
if(n - x[i] < 0) {
break;
}
else
sol[++d] = x[i], n -= x[i];
}
if(n)
sol[++d] = n;
if(d == 1){
sol[d]--;
sol[++d] = 1;
}
// printf("%d\n", n);
for(i = 1; i <= d; ++i)
printf("%d ", sol[i] * a);
printf("\n");
return 0;
}