Pagini recente » Cod sursa (job #404890) | Cod sursa (job #482852) | Cod sursa (job #2264743) | Cod sursa (job #2324853) | Cod sursa (job #1231679)
#include <fstream>
const char IN [ ] = "oras.in" ;
const char OUT [ ] = "oras.out" ;
const int MAX = 214 ;
using namespace std ;
ifstream fin ( IN ) ;
ofstream fout ( OUT ) ;
char A [ MAX ] [ MAX ] ;
void back ( int k )
{
if ( k == 3 )
{
A [ 1 ] [ 2 ] = '1' ;
A [ 2 ] [ 3 ] = '1' ;
A [ 3 ] [ 1 ] = '1' ;
return ;
}
if ( k == 6 )
{
A [ 1 ] [ 2 ] = A [ 1 ] [ 4 ] = A [ 1 ] [ 6 ] = '1';
A [ 2 ] [ 3 ] = A [ 2 ] [ 5 ] = A [ 2 ] [ 6 ] = '1';
A [ 3 ] [ 1 ] = A [ 3 ] [ 5 ] = A [ 4 ] [ 2 ] = '1';
A [ 4 ] [ 3 ] = A [ 4 ] [ 5 ] = A [ 5 ] [ 1 ] = '1';
A [ 5 ] [ 6 ] = A [ 6 ] [ 3 ] = A [ 6 ][ 4 ] = '1';
return ;
}
A [ k - 1 ] [ k ] = '1' ;
for ( int i = 1 ; i <= k - 2 ; ++ i )
A [ i ] [ k - 1 ] = A [ k ] [ i ] = '1' ;
back ( k - 2 ) ;
}
int main ( )
{
int n ;
fin >> n ;
if ( n == 4 )
{
fout << -1 ;
return 0 ;
}
for ( int i = 1 ; i <= n ; ++ i )
for ( int j = 1 ; j <= n ; ++ j )
A [ i ] [ j ] = '0' ;
back ( n ) ;
for ( int i = 1 ; i <= n ; ++ i , fout << '\n' )
for ( int j = 1 ; j <= n ; ++ j )
fout << A [ i ] [ j ] ;
return 0 ;
}