Pagini recente » Cod sursa (job #1271545) | Cod sursa (job #1044927) | Cod sursa (job #1297257) | Cod sursa (job #78339) | Cod sursa (job #1070248)
#include <cstdio>
using namespace std;
long long n,i;
int main()
{
freopen("multimi2.in","r",stdin);
freopen("multimi2.out","w",stdout);
scanf("%ld",&n);
if (n%4==1 || n%4==2)
printf("1\n");
else
printf("0\n");
if (n%4==1)
{
printf("%ld\n1 ",n/2+1);
for (i=2;i<=n;i++)
{
if (i<=n/2+1 && i%2==0)
printf("%ld ",i);
if (i>n/2+1 && i%2)
printf("%ld ",i);
}
printf("\n%ld\n",n/2);
for (i=2;i<=n;i++)
{
if (i<=n/2+1 && i%2)
printf("%ld ",i);
if (i>n/2+1 && i%2==0)
printf("%ld ",i);
}
}
if (n%4==2)
{
printf("%ld\n1",n/2);
for (i=2;i<=n;i++)
{
if (i<=n/2 && i%2)
printf("%ld ",i);
if (i>n/2+1 && i%2==0)
printf("%ld ",i);
}
printf("\n%ld\n",n/2);
for (i=2;i<=n;i++)
{
if (i<=n/2+1 && i%2==0)
printf("%ld ",i);
if (i>n/2 && i%2)
printf("%ld ",i);
}
}
if (n%4==3)
{
printf("%ld\n1 2 ",n/2+1);
for (i=4;i<=n;i++)
{
if (i<=n/2+1 && i%2==0)
printf("%ld ",i);
if (i>n/2+2 && i%2)
printf("%ld ",i);
}
printf("\n%ld\n3",n/2);
for (i=4;i<=n;i++)
{
if (i<=n/2+2 && i%2)
printf("%ld ",i);
if (i>n/2+1 && i%2==0)
printf("%ld ",i);
}
}
if (n%4==0)
{
printf("%ld\n",n/2);
for (i=1;i<=n;i++)
{
if (i<=n/2 && i%2)
printf("%ld ",i);
if (i>n/2 && i%2==0)
printf("%ld ",i);
}
printf("\n%ld\n",n/2);
for (i=1;i<=n;i++)
{
if (i<=n/2 && i%2==0)
printf("%ld ",i);
if (i>n/2 && i%2)
printf("%ld ",i);
}
}
}