Cod sursa(job #2167649)

Utilizator NeredesinI am not real Neredesin Data 13 martie 2018 22:42:38
Problema Oras Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream in("oras.in");
ofstream out("oras.out");

const int NMAX = 200 + 5;

int n;
int g[1 + NMAX][1 + NMAX];

int main()
{
  in >> n;

  if(n == 4) {
    out << "-1\n";
  } else {
    int base;
    if((n % 2) == 1)
      base = 2;
    else
      base = 3;

    for(int i = 1; i < n; i++)
      for(int j = i + 1; j <= n; j++)
        g[i][j] = 1;

    for(int i = 1; i <= n; i++) {
      for(int j = i - base; j >= 1; j -= 2) {
        g[i][j] = 1;
        g[j][i] = 0;
      }
    }

    if(!n % 2) {
      g[3][n] = 1;
      g[n][3] = 0;
    }

    for(int i = 1; i <= n; i++) {
      for(int j = 1; j <= n; j++)
        out << g[i][j];
      out << '\n';
    }
  }

  in.close();
  out.close();
  return 0;
}