Persona @ 2018-01-12 13:39:12
#include<cstdio>
int b[30000],n;
void read(int &x)
{
int i=1; x=0; char zx=getchar();
while(zx<'0'||zx>'9')
{
if(zx=='-') i=-1;
zx=getchar();
}
while(zx>='0'&&zx<='9')
{
x=x*10+zx-48;
zx=getchar();
}
x*=i;
}
inline void write(int x)
{
if(x<0)
{
putchar('-');
x=-x;
}
if(x>9) write(x/10);
putchar(x%10+48);
}
int main()
{
read(n);
b[1]=1;
b[0]=1;
for(int i=2;i*i<=n;i++)
{
if(b[i]==0)
{
for(int j=i<<1;j<=n;j+=i)
b[j]=1;
}
}
for(int i=2;i<=n;i++)
{
if(b[i]==0)
{
for(int j=2;j<=n;j++)
{
if(b[j]==0&&b[n-i-j]==0)
{
write(i);
putchar(' ');
write(j);
putchar(' ');
write(n-i-j);
return 0;
}
}
}
}
return 0;
}