Cod sursa(job #1233614)

Utilizator VladTiberiuMihailescu Vlad Tiberiu VladTiberiu Data 25 septembrie 2014 19:36:00
Problema Dame Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.72 kb
#include <fstream>

using namespace std;
ifstream f("dame.in");
ofstream g("dame.out");
int n,a[1001],i,r,x;
int main()
{
    f>>n;
    if(n==2) g<<n-1<<"\n"<<1<<" "<<1;
        else
            if(n==3) g<<n-1<<"\n"<<1<<" "<<1<<"\n"<<2<<" "<<3;
                    else
                    {   g<<n<<"\n";
                        r=0;
                        for(i=2;i<=n;i+=2)
                            a[++r]=i;
                        if(n%12==3||n%12==9)
                            {
                                for(i=1;i<n;++i)
                                a[i]=a[i+1];
                                a[r]=2;
                            }

                        for ( int i= 1; i<=r; ++i ) {
                            g<<i<<" "<<a[i]<<"\n";}

                        r=0;
                        for(i=1;i<=n;i+=2)
                            a[++r]=i;



                        if(n%12==8)
                            for(i=2;i<=n;i+=2)
                                swap(a[i],a[i-1]);

                        if(n%12==2)
                        {
                            swap(a[1],a[2]);
                            for(i=3;i<r;++i)
                            a[i]=a[i+1];
                            a[r]=5;
                        }
                        if (n%6==3) {
                            for(int i=1;i<=r-2;++i) {
                                a[i]= a[i+2];
                            }
                            a[r-1]= 1;
                            a[r]= 3;
                        }
                        for(i=1;i<=r;++i){
                            g<<n/2+i<<" "<<a[i]<<"\n";
                        }

                    }

    return 0;
}