Pagini recente » Cod sursa (job #1600216) | Cod sursa (job #366234) | Cod sursa (job #175101) | Cod sursa (job #1852063) | Cod sursa (job #585766)
Cod sursa(job #585766)
#include <cstdio>
int n, d, v[10000], h, f, a[10000];
char p[11000];
int main()
{
freopen("nummst.in","r",stdin);
freopen("nummst.out","w",stdout);
scanf("%d",&n);
int i, c, k, s, x;
for (i=2; i*i<=n; i++)
{
if (!(n%i))
{
d=i;
break;
}
}
s=d;
d=n/d;
for (x=2; x<=s; x++)
for (i=x+x; i<=s; i+=x) p[i]=1;
for (i=2; i<=s; i++)
if (!p[i]) a[++f]=i;
if (s==2)
{
h=2;
v[1]=v[2]=1;
} else
{
c=1;
for (k=0; k+a[c]<=s; )
{
v[++h]=a[c];
k+=a[c];
c++;
}
c=s-k;
for (i=1; i<=c; i++) v[++h]=1;
}
for (i=1; i<=h; i++) printf("%d ", v[i]*d);
return 0;
}