Cod sursa(job #799081)

Utilizator gigi1996gicamarin gigi1996 Data 17 octombrie 2012 21:19:00
Problema Dame Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.49 kb
#include<fstream>
 using namespace std;
 ifstream f("dame.in");
 ofstream g("dame.out");
 int n,a[101],b[101],c[201],d[101],i,k,k1=0,k2=0,q=0,z=0,R[8],e,j;

 void creare()
 {  for(i=1; i<=n; ++i)
        d[i]=i;
k2=1; k1=1;
     for(i=1; i<=n; ++i)
        {
            if(d[i]%2==0)  { a[k2]=d[i]; k2++;}
                else { b[k1]=d[i]; k1++;}

        }



}

void lipire()
{   j=1;
    for(i=1; i<=k2; ++i){c[i]=a[i]; }
    for(i=k2; i<=n; ++i) { c[i]=b[j]; j++; }


}
void afisare()
{
    lipire();  for(j=1; j<=n; ++j) g<<j<<" "<<c[j]<<'\n';
}
 int main()
 { f>>n;
    creare();

    z=n%12;
    //g<<z;
    for(i=1; i<=n; ++i)
        {
            if(z!=R[i])
            {
                if(z==3 || z==9)
                {
                    for(j=1; j<=n; ++j)
                        {a[j]=a[j+1]; a[q]=2; }
                }

                if(z==8)
                {
                    for(j=1; j<=n; j=2+j)
                        { e=b[j]; b[j]=b[j+1]; b[j+1]=e;}
                }

                if(z==2)
                 {
                     for(j=1; j<=n; ++j)
                        {e=b[1]; b[1]=b[2]; b[2]=e; if(j>=3){b[j]=b[j+1]; b[n]=5;}}
                 }

                if(z==3 || z==9)
                {
                    for(j=1; j<=n-2; ++j)
                        {b[j]+=2; b[n]=3; b[n-1]=1;}
                }

            }
            else afisare();



        }
        afisare();
    return 0;
 }