Pagini recente » Cod sursa (job #886064) | Autentificare | Cod sursa (job #2686540) | Cod sursa (job #1776856) | Cod sursa (job #2021032)
#include <stdio.h>
int n , i ;
int a[1001] ;
int t;
int main(){
freopen( "dame.in" , "r ", stdin );
freopen( "dame.out" , "w" , stdout );
scanf( "%d" , &n );
if( n == 2 ){
printf( "1\n1 1\n" );
return 0;
}else if( n == 3 ){
printf( "2\n1 1\n2 3\n" );
return 0;
}
for( i = 2 ; i <= n ; i = i + 2 ){
a[i / 2] = i;
}
for( i = 1 ; i <= n ; i = i + 2 ){
a[n/2 + i/2 + 1] = i;
}
if( n % 6 == 3 ){
for( i = 1 ; i < n/2 ; i++ ){
a[i] = a[i + 1];
}
a[n / 2] = 2;
for ( i = n/2 + 1 ; i < n - 1 ; i++ ){
a[i] = a[i + 2];
}
a[n - 1] = 1;
a[n] = 3;
}else if( n % 12 == 2 ){
a[n / 2 + 1] = 3;
a[n / 2 + 2] = 1;
for( i = n / 2 + 3 ; i < n ; i++ ){
a[i] = a[i + 1];
}
a[n] = 5;
}else if( n % 12 == 8 ){
for( i = n/2 + 1 ; i < n ; i = i + 2 ){
t = a[i];
a[i] = a[i + 1];
a[i + 1] = t;
}
}
printf( "%d\n" , n );
for( i = 1 ; i <= n ; i++ ){
printf( "%d %d\n" , i , a[i] );
}
return 0;
}