Cod sursa(job #954977)

Utilizator apopeid14Apopei Daniel apopeid14 Data 30 mai 2013 16:13:01
Problema Dame Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.15 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;
}