Cod sursa(job #110627)

Utilizator victorsbVictor Rusu victorsb Data 27 noiembrie 2007 08:42:37
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <cstdio>
#include <vector>

using namespace std;

int n;
vector<int> m1, m2;

void citire()
{
	scanf("%d\n", &n);
}

void solve()
{
	int i, dif = 0;

	for (i = n; i >= 4; i -= 4)
	{
		m1.push_back(i);
		m1.push_back(i - 3);
		m2.push_back(i - 2);
		m2.push_back(i - 1);
	}

	if (i == 3)
	{
		m1.push_back(3);
		m2.push_back(2);
		m2.push_back(1);
	}

	if (i == 2)
	{
		m1.push_back(2);
		m2.push_back(1);
		dif = 1;
	}

	if (i == 1)
	{
		m1.push_back(1);
		dif = 1;
	}

	printf("%d\n", dif);
	printf("%d\n", (int)m1.size());
	for (i = 0; i < (int)m1.size(); ++i)
		printf("%d ", m1[i]);
	printf("\n");
	printf("%d\n", (int)m2.size());
	for (i = 0; i < (int)m2.size(); ++i)
		printf("%d ", m2[i]);
	printf("\n");
}

int main()
{
	freopen("multimi2.in", "r", stdin);
	freopen("multimi2.out", "w", stdout);

	citire();
	solve();

	return 0;
}