Pagini recente » Cod sursa (job #2401896) | Cod sursa (job #2624830) | Cod sursa (job #1462958) | Cod sursa (job #1639719) | Cod sursa (job #2774844)
#include<stdio.h>
int n,a[1001],i,k,l,x;
int main()
{
freopen("dame.in","r",stdin),freopen("dame.out","w",stdout),scanf("%d",&n);
if(n==1||n==2)
printf("1\n1 1");
else if(n==3)
printf("2\n1 1\n2 3");
else {
printf("%d\n",n);
for(i=2;i<=n;i+=2)
a[++k]=i;
if(n%12==3||n%12==9) {
for(i=1;i<k;++i)
a[i]=a[i+1];
a[k]=2;
}
for(l=k,i=1;i<=n;i+=2)
a[++k]=i;
if(n%12==8)
for(i=l+1;i<=k;i+=2)
x=a[i],a[i]=a[i+1],a[i+1]=x;
else if(n%12==2) {
for(x=a[l+1],a[l+1]=a[l+2],a[l+2]=x,i=l+3;i<k;++i)
a[i]=a[i+1];
a[k]=5;
}
else if(n%12==3||n%12==9) {
for(i=l+1;i<k-1;++i)
a[i]=a[i+2];
a[k-1]=1,a[k]=3;
}
for(i=1;i<=n;++i)
printf("%d %d\n",i,a[i]);
}
return 0;
}