Pagini recente » Cod sursa (job #1624743) | Cod sursa (job #2729078) | Cod sursa (job #1413375) | Cod sursa (job #1322541) | Cod sursa (job #1443884)
#include<fstream>
#include<iostream>
using namespace std;
ifstream fin ("dame.in");
ofstream fout("dame.out");
int n,i,j,v[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)
{
int z=n%6;
for(i=1;i<=n;i=i+2)
v[n/2+i/2+1]=i;
for(i=2;i<=n;i=i+2)
v[i/2]=i;
if(k==0)
{
if(z==3 || z==9)
{
for(i=1;i<=n/2;i++)
v[i]=v[i+1];
v[n/2]=2;
for(i=n/2+1;i<n-i;i++)
v[i]=v[i+2];
v[n-1]=1;
v[n]=3;
}
else
if(z==2)
{
v[n/2+1]=3;
v[n/2+2]=1;
for(i=n/2+3;i<n;i++)
v[i]=v[i+1];
v[n]=5;
}
else
if(z==8)
{
for(i=1;i<=n;i++)
schimba(v[i],v[i+1]);
}
fout<<n<<'\n';
for(i=1;i<=n;i++)
{
fout<<i<<" "<<v[i]<<'\n';
}
}
return 0;
}
}