Cod sursa(job #2017731)

Utilizator lucametehauDart Monkey lucametehau Data 2 septembrie 2017 11:53:39
Problema Dame Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.98 kb
#include <fstream>

using namespace std;
ifstream cin("dame.in");
ofstream cout("dame.out");
int n,i,j,a[1001],r;
int main()
{
    cin>>n;
    r=n%12;
    if(n==1)cout<<"1\n1 1";
    if(n==2)cout<<"1\n1 1";
    if(n==3)cout<<"2\n1 1\n2 3";
    if(n>=4)
    {
        if(r!=3&&r!=9)
            a[++i]=2;
        for(j=4;j<=n;j+=2)
            a[++i]=j;
        if(a[1]!=2)
            a[++i]=2;
        for(j=1;j<=n;j+=2)
            a[++i]=j;
        if(r==2)
        {
            swap(a[i/2+1],a[n/2+2]);
            for(j=i/2+3;j<i;j++)
                a[j]=a[j+1];
            a[i]=5;
        }
        if(r==3||r==9)
        {
            for(j=i/2+1;j<i-1;j++)
                a[j]=a[j+2];
            a[i-1]=1;a[i]=3;
        }
        if(r==8)
        {
            for(j=i/2+1;j<=i;j+=2)
                swap(a[j],a[j+1]);
        }
        cout<<i<<"\n";
        for(j=1;j<=i;j++)
            cout<<j<<" "<<a[j]<<"\n";
    }
    return 0;
}