Cod sursa(job #1443889)

Utilizator morandy14Andreea morandy14 Data 28 mai 2015 21:51:21
Problema Dame Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.39 kb
#include<fstream>
#include<iostream>
using namespace std;
ifstream fin ("dame.in");
ofstream fout("dame.out");
int n,i,j,t,a[1001];
void schimba (int x, int y)
{
	int aux;
	aux=x;
	x=y;
	y=aux;
}
int main ()
{
	fin>>n;
	int k=0;
	if(n==1 || n==2)
	{
		fout<<1<<'\n';
		fout<<"1"<<" "<<"1";
		k=1;
	
	}
	else
		if(n==3)
		{
			fout<<2<<'\n';
			fout<<"1"<<" "<<"1"<<'\n'<<"2"<<" "<<"3";
			k=1;
			
		}
		else
			if(n>3)
			{
				t=n%12;
    j=2;i=0;
     
    while (j<=n)
    {
        i++;
        a[i]=j;
        j+=2;      
    }
     
    if (t==3 || t==9)
    {
       for (j=1; j<=i-1; j++)
           a[j]=a[j+1];
       a[i]=2;
    }
     
    j=1;
    while (j<=n)
    {
        i++;
        a[i]=j;
        j+=2;      
    }
     
    if (t==8)
    {
       i=0;
       for (i=n/2+2; i<=n; i+=2)
       {
           int x=a[i];
           a[i]=a[i-1];
           a[i-1]=x;    
       }         
    }
     
    if (t==2)
    {
       a[n/2+1]=3;
       a[n/2+2]=1;
       for (i=n/2+3; i<=n-1; i++)
           a[i]=a[i+1];
       a[n]=5;         
    }
     
    if (t==3 || t==9)
    {
       for (i=n/2+1; i<=n-2; i++)         
           a[i]=a[i+2];
       a[n-1]=1;
       a[n]=3;
    }
			}
			fout<<n;
			for(i=1;i<=n;i++)
				{fout<<i<<" "<<a[i];
			fout<<'\n';
				}
					
								return 0;
			}