Pagini recente » Cod sursa (job #2500909) | Cod sursa (job #176594) | Cod sursa (job #3344798) | Cod sursa (job #3306161) | Cod sursa (job #120293)
Cod sursa(job #120293)
#include <cstdio>
#include <cstring>
using namespace std;
#define FIN "multimi2.in"
#define FOUT "multimi2.out"
int N;
void solve ()
{
int i;
if (!(N % 4))
{
int lim = N/4 - 1;
printf ("0\n");
printf ("%d\n", lim * 2 + 1);
printf ("3");
for (i = 1; i <= lim; ++i)
printf (" %d %d", 4*i, 4*i + 3);
printf ("\n%d\n", (lim + 1) * 2);
printf ("1 2");
for (i = 1; i <= lim; ++i)
printf (" %d %d", 4*i + 1, 4*i + 2);
}
if (N % 4 == 1)
{
N--;
int lim = N/4 - 1;
printf ("1\n");
printf ("%d\n", lim * 2 + 2);
printf ("3");
for (i = 1; i <= lim; ++i)
printf (" %d %d", 4*i, 4*i + 3);
printf (" %d", N);
printf ("\n%d\n", (lim + 1) * 2 + 1);
printf ("1 2");
for (i = 1; i <= lim; ++i)
printf (" %d %d", 4*i + 1, 4*i + 2);
printf (" %d", N - 1);
}
/* if (N % 4 == 2)
{
N -= 2;
int lim = N/4 - 1;
printf ("0\n");
printf ("%d\n", lim * 2 + 1);
printf ("3");
for (i = 1; i <= lim; ++i)
printf (" %d %d", 4*i, 4*i + 3);
printf ("\n%d\n", (lim + 1) * 2);
printf ("1 2");
for (i = 1; i <= lim; ++i)
printf (" %d %d", 4*i + 1, 4*i + 2);
}*/
}
int main ()
{
freopen (FIN, "r", stdin);
freopen (FOUT, "w", stdout);
scanf ("%d", &N);
solve ();
return 0;
}