Pagini recente » Cod sursa (job #2314141) | Cod sursa (job #1900949) | Cod sursa (job #2407898) | Cod sursa (job #1294665) | Cod sursa (job #68876)
Cod sursa(job #68876)
#include<stdio.h>
int n, v[1003], nr;
int main()
{
int i, j;
i=2;
freopen("dame.in","r",stdin);
freopen("dame.out","w",stdout);
scanf ("%d",&n);
if (n%12==3 || n%12==9) i=4;
while (i<=n)
{ v[++nr]=i; i+=2;}
if (v[1]==4) v[++nr]=2;
i=1; j=3;
if (n%12==8)
{ while (i<=n && j<=n){ v[++nr]=j; v[++nr]=i; i+=4; j+=4; }
if (n-v[nr]>=2) v[++nr]=v[nr-1]+2;}
else if (n%12==2)
{ v[++nr]=3; v[++nr]=1;i=5; j=7;
while(i<=n && j<=n ) { v[++nr]=i; v[++nr]=j; i+=4; j+=4;}
if (n-v[nr]>=2) v[++nr]=5;
else v[nr]=5;
}
else if (n%12==3)
{ i=5; j=7;
while(i<=n && j<=n ) { v[++nr]=i; v[++nr]=j; i+=4; j+=4;}
if (n-v[nr]>=2) { v[nr]=1; v[++nr]=3;}
else { v[nr-1]=1; v[nr]=3;}
}
else { i=1; j=3;
while (i<=n && j<=n) {v[++nr]=i; v[++nr]=j; i+=4; j+=4;}
if (n-v[nr]>=2) v[++nr]=v[nr-1]+2;}
printf("%d\n",n);
for (i=1; i<=nr; i++)
printf("%d %d\n",i,v[i]);
return 0;
}