Pagini recente » Cod sursa (job #1514273) | Cod sursa (job #2460569) | Cod sursa (job #1940726) | Cod sursa (job #1350436) | Cod sursa (job #1938182)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("dame.in");
ofstream fout("dame.out");
int n,s[1<<10],l,p,i;
int main()
{
fin >>n;
if(n==2) return fout << "1\n1 1",0;
if(n==3) return fout << "2\n1 1\n3 2",0;
fout << n << "\n";
for(i=2;i<=n;i+=2) s[++p]=i;
if(n%6==3)
{
for(i=1;i<p;++i) s[i]=s[i+1];
s[p]=2;
}
for(i=1;i<=p;++i) fout <<i<<' '<<s[i]<<'\n';
p=0;
for(i=1;i<=n;i+=2) s[++p]=i;
if(n%12==8) for(i=2;i<=p;i+=2) swap(s[i],s[i-1]);
if(n%12==2)
{
swap(s[1],s[2]);
for(i=3;i<p;++i) s[i]=s[i+1];
s[p]=5;
}
if(n%6==3)
{
for(i=1,l=p-1;i<l;++i) s[i]=s[i+2];
s[p-1]=1;s[p]=3;
}
for(i=1,l=n/2;i<=p;++i) fout << (l+i) << ' ' << s[i] << '\n';
return 0;
}