Cod sursa(job #831630)

Utilizator cat_red20Vasile Ioana cat_red20 Data 8 decembrie 2012 21:07:59
Problema Dame Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.09 kb
#include<stdio.h>
int v[1001],n,u;

int main()
{
    freopen("dame.in","r",stdin);
    freopen("dame.out","w",stdout);
    scanf("%d",&n);
    if(n<=2)
    {
        printf("1\n");
        printf("1 1");
        return 0;
    }
    if(n==3)
    {
        printf("2\n");
        printf("1 2\n3 1");
        return 0;
    }
    printf("%d",n);
    if(n%12==3 || n%12==9)
    {
        for(int i=4;i<=n;i+=2)
        v[++u]=i;
        v[++u]=2;
        for(int i=5;i<=n;i+=2)
        v[++u]=i;
        v[++u]=1;
        v[++u]=3;
    }
    else
    {
        for(int i=2;i<=n;i+=2)
        v[++u]=i;
        if(n%12==2)
        {
            v[++u]=3;
            v[++u]=1;
            for(int i=7;i<=n;i+=2)
            {
                v[++u]=i;
            }
            v[++u]=5;
        }
        else
        if(n%12==8)
        {
            for(int i=3;i<=n;i+=4)
            {
                v[++u]=i;
                v[++u]=i-2;
            }
        }
    }
    for(int i=1;i<=n;i++)
    {
        printf("\n%d %d",i,v[i]);
    }
    return 0;
}