Cod sursa(job #518997)

Utilizator loginLogin Iustin Anca login Data 3 ianuarie 2011 18:57:10
Problema Dame Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
# include <fstream>
# include <cstdio>
# include <iostream>
# define DIM 1024
using namespace std;
int n, rez, x[DIM]; 

int main ()
{
	ifstream fin ("dame.in");
	fin>>n;
	int st;
	if (n==2)rez=1, x[1]=1;
	else if (n==3) rez=2, x[1]=1, x[2]=3;
	else
	{
		if (n%12==3 || n%12==9)st=0, x[n/2]=2;
		else st=1, x[1]=2;
		for(int i=4;i<=n;i+=2)
			x[++st]=i;
		st=n/2;
		if (n%12==8)
			for(int i=3;i<=n;i+=4)
				x[++st]=i, x[++st]=i-2;
		else if (n%12==2)
		{
			x[++st]=3, x[++st]=1;
			for(int i=7;i<=n;i+=2)
				x[++st]=i;
			x[++st]=5;
		}
		else if (n%12==3 || n%12==9)
		{
			for(int i=5;i<=n;i+=2)
				x[++st]=i;
			x[++st]=1;x[++st]=3;
		}
		else 
			for(int i=1;i<=n;i+=2)	
				x[++st]=i;
		rez=st;
	}	
	freopen("dame.out", "w", stdout);
	printf("%d\n", rez);
	for(int i=1;i<=rez;++i)
		printf("%d %d\n", i, x[i]);
	return 0;
}