Cod sursa(job #613599)

Utilizator crushackPopescu Silviu crushack Data 1 octombrie 2011 15:25:47
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <stdio.h>

const char IN[]="multimi2.in",OUT[]="multimi2.out";
const int Sol[4]={0,1,1,0};
int N;

void solve(int N,int p)
{
	if (N<=0) return;
	if (N==1)
	{
		if (p==1) printf("1 ");
		return;
	}
	if (N==2)
	{
		printf("%d ",p);
		return;
	}
	if (N==3)
	{
		if (p==1) printf("1 2 ");
		else printf("3 ");
		return;
	}
	
	if (p==1) printf("%d %d ",N-3,N);
	else printf("%d %d ",N-2,N-1);
	
	solve(N-4,p);
	
}

int main()
{
	freopen(IN,"r",stdin);
	scanf("%d",&N);
	fclose(stdin);
	
	freopen(OUT,"w",stdout);
	printf("%d\n",Sol[N%4]);
	printf("%d\n",N/2+N%2);
	solve(N,1);printf("\n");
	printf("%d\n",N/2);
	solve(N,2);printf("\n");
	fclose(stdout);
	
	return 0;
}