Cod sursa(job #2275997)

Utilizator liviu2000Dragomirescu Liviu liviu2000 Data 3 noiembrie 2018 20:48:09
Problema Oras Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.34 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("oras.in") ;
ofstream fout("oras.out") ;

int mat[205][205] ;

int main()
{
    int n , i , j ;
    fin >> n ;
    if ( n == 4 )
    {
        fout << "-1" ;
        return 0;
    }
    if ( n%2 != 0 )
    {
        mat[1][2] = 1 ;
        mat[2][3] = 1 ;
        mat[3][1] = 1 ;
        for ( i = 5 ; i <= n ; i = i+2 )
        {
            for ( j = 1 ; j <= i-2 ; j++ )
            {
                mat[i-1][j] = 1 ;
                mat[j][i] = 1 ;
            }
            mat[i][i-1] = 1 ;
        }
    }
    else
    {
        mat[1][2] = 1;
        mat[1][3] = 1;
        mat[1][5] = 1;
        mat[2][3] = 1;
        mat[2][4] = 1;
        mat[2][5] = 1;
        mat[3][4] = 1;
        mat[3][6] = 1;
        mat[4][1] = 1;
        mat[4][5] = 1;
        mat[4][6] = 1;
        mat[5][3] = 1;
        mat[5][6] = 1;
        mat[6][1] = 1;
        mat[6][2] = 1;
        for ( i = 8 ; i <= n ; i=i+2 )
        {
            for ( j = 1 ; j <= i-2 ; j++ )
            {
                mat[i-1][j] = 1 ;
                mat[j][i] = 1 ;
            }
            mat[i][i-1] = 1 ;
        }
    }
    for ( i = 1 ; i <= n ; i++ )
    {
        for ( j = 1 ; j <= n ; j++ )
            fout << mat[i][j] ;
        fout << '\n' ;
    }
}