Pagini recente » Cod sursa (job #2243877) | Cod sursa (job #1821421) | Cod sursa (job #2301877) | Cod sursa (job #2683233) | Cod sursa (job #1481595)
#include<fstream>
#include<algorithm>
using namespace std;
ifstream f("dame.in"); ofstream g("dame.out");
int n,k,v[1005];
int main()
{ f>>n;
if(n<=2) g<<"1\n1 1";
if(n==3) g<<"2\n1 2\n3 3";
if(n>3)
{ int i;
for(i=1;i<=n>>1;++i)
if(!(i==1 && (n%12==3 || n%12==9))) v[++k]=i<<1;
if(n%12==3 || n%12==9) v[++k]=2;
for(i=1;i<=n>>1;++i)
if(!(i==3 && (n%12==2)))
if(!((i==1 || i==2) && (n%12==3 || n%12==9))) v[++k]=(i<<1)-1;
if(n&1) v[++k]=n;
if(n%12==8) for(i=(n>>1)+1;i<=k;i+=2) swap(v[i],v[i+1]);
else if(n%12==2) swap(v[(n>>1)+1],v[(n>>1)+2]), v[++k]=5;
else if(n%12==3 || n%12==9) v[++k]=1, v[++k]=3;
g<<k<<'\n';
for(i=1;i<=k;++i) g<<i<<' '<<v[i]<<'\n';
}
g.close(); return 0;
}