Cod sursa(job #149338)

Utilizator slayer4uVictor Popescu slayer4u Data 5 martie 2008 16:43:08
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
#include <stdio.h>

long n, rest, i, x[2][1000000];

int main()
{
	freopen ("multimi2.in", "rt", stdin);
	freopen ("multimi2.out", "wt", stdout);

	scanf("%ld", &n);

	rest = n % 4;

	for (i = 1 + rest; i <= n; i += 4)
	{
		x[0][++ x[0][0]] = i;
		x[1][++ x[1][0]] = i + 1;
		x[1][++ x[1][0]] = i + 2;
		x[0][++ x[0][0]] = i + 3;

	}

	if (rest == 1)
	{
		x[0][++ x[0][0]] = 1;
	}
	else
	if (rest == 2)
	{
		x[0][++ x[0][0]] = 1;
		x[1][++ x[1][0]] = 2;
	}
	else
	if (rest == 3)
	{
		x[0][++ x[0][0]] = 1;
		x[0][++ x[0][0]] = 2;
		x[1][++ x[1][0]] = 3;
	}

	printf("%ld\n", rest == 0 ? 0 : rest == 1 ? 1 : rest == 2 ? 1 : 0);

	printf("%ld\n", x[0][0]);
	for (i = 1; i <= x[0][0]; i ++)
		printf("%ld ", x[0][i]);

	printf("\n%ld\n", x[1][0]);
	for (i = 1; i <= x[1][0]; i ++)
		printf("%ld ", x[1][i]);
	printf("\n");

	return 0;
}