Pagini recente » Cod sursa (job #203893) | Cod sursa (job #2272625) | Cod sursa (job #1904942) | Cod sursa (job #1032829) | Cod sursa (job #957972)
Cod sursa(job #957972)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("dame.in");
ofstream g("dame.out");
#define Nmax 1010
#define X 12
int n,v[Nmax],k;
int main()
{
f>>n;
if(n % X==3 && n % X==9)
{
k=0;
for(int i=4;i<=n;i+=2)v[++k]=i;
v[++k]=2;
}
else
{
k=0;
for(int i=2;i<=n;i+=2)v[++k]=i;
}
for(int i=1;i<=n;i+=2)v[++k]=i;
if(n % X==8) for(int i=n/2+1;i<=n;i+=2) swap(v[i],v[i+1]);
else if(n % X==2)swap(v[n/2+1],v[n/2+2]);
else if(n % X==3 || n % X==9)
{
for(int i=n/2+1;i<=n-2;i++)v[i]=v[i+2];
v[n-1]=1;v[n]=3;
}
g<<n<<'\n';
for(int i=1;i<=n;i++)g<<i<<" "<<v[i]<<'\n';
f.close();g.close();
return 0;
}