Cod sursa(job #2206608)

Utilizator Andrei_CotorAndrei Cotor Andrei_Cotor Data 23 mai 2018 08:17:32
Problema Dame Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.38 kb
#include<fstream>
using namespace std;
ifstream fi("dame.in");
ofstream fo("dame.out");
int n,i,x;
int main()
{
    fi>>n;
    if(n==2)
    {
        fo<<"1\n";
        fo<<1<<" "<<1;
        fi.close();
        fo.close();
        return 0;
    }
    if(n==3)
    {
        fo<<"2\n";
        fo<<1<<" "<<1<<"\n";
        fo<<3<<" "<<2<<"\n";
        fi.close();
        fo.close();
        return 0;
    }
    fo<<n<<"\n";
    if(n%6==2)
    {
        for(i=1,x=2; x<=n; x+=2,i++)
            fo<<i<<" "<<x<<"\n";
        fo<<i<<" "<<3<<"\n";
        i++;
        fo<<i<<" "<<1<<"\n";
        for(i++,x=7; x<=n; x+=2, i++)
            fo<<i<<" "<<x<<"\n";
        fo<<i<<" "<<5<<"\n";
    }
    else
    {
        if(n%6==3)
        {
            for(i=1,x=4; x<=n; x+=2,i++)
                fo<<i<<" "<<x<<"\n";
            fo<<i<<" "<<2<<"\n";
            i++;
            for(x=5; x<=n; i++,x+=2)
                fo<<i<<" "<<x<<"\n";
            fo<<i<<" "<<1<<"\n";
            i++;
            fo<<i<<" "<<3<<"\n";
        }
        else
        {
            if(n%2==1)
            {
                fo<<n<<" "<<n<<"\n";
                n--;
            }
            for(i=1,x=2; x<=n; i++,x+=2)
                fo<<i<<" "<<x<<"\n";
            for(x=1; x<=n; i++,x+=2)
                fo<<i<<" "<<x<<"\n";
        }
    }
    return 0;
}