Cod sursa(job #911507)

Utilizator Kira96Denis Mita Kira96 Data 11 martie 2013 19:04:34
Problema Dame Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include<fstream>
using namespace std;
ifstream f("dame.in");
ofstream g("dame.out");
int n,l[1100],i,po,t;
void t1()
{
	g<<"1\n1 1";
}
void t2()
{
	g<<"1\n1 1";
}
void t3()
{
	g<<"2\n1 1\n2 3";
}
void t4()
{
	g<<"4\n1 2\n2 4\n3 1\n4 3";
}
int main ()
{
	f>>n;
	if(n<=4)
	switch(n)
	{
	case 1: t1(); break;
	case 2: t2(); break;
	case 3: t3(); break;
	case 4: t4(); break;
	}
	if(n<=4)
		return 0;
	if(n%12==3||n%12==9)
	{
		for(i=4;i<=n;i+=2)
			l[++t]=i;
		l[++t]=2;
	}
	else
	for(i=2;i<=n;i+=2)
		l[++t]=i;
	if(n%12==3||n%12==9)
	{
		for(i=5;i<=n;i+=2)
			l[++t]=i;
		l[++t]=1; l[++t]=3;
	}
	if(n%12==2)
	{
		l[++t]=3; l[++t]=1;
		for(i=7;i<=n;i+=2)
			l[++t]=i;
		l[++t]=5;
	}
	if(n%12==8)
	{
		for(i=3;i<=n;i+=4)
		{
			l[++t]=i;
			l[++t]=i-2;
		}
	}
	if(t!=n)
		for(i=1;i<=n;i+=2)
			l[++t]=i;
	g<<n<<"\n";
	for(i=1;i<=n;++i)
		g<<i<<" "<<l[i]<<"\n";
	return 0;
}