Cod sursa(job #1521666)
Utilizator | Data | 10 noiembrie 2015 19:11:17 | |
---|---|---|---|
Problema | Oras | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 2.29 kb |
#include<fstream>
#include<vector>
#include<cstring>
using namespace std;
ifstream fin("oras.in");
ofstream fout("oras.out");
vector<int> v[205];
int a[205][205],i,j,n,k;
int main(){
fin>>n;
if(n==4){
fout<<"-1\n";
return 0;
}
if(n%2==1){
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
if(i!=j){
if(i%2==1){
if(j%2==0){
if(i<j){
v[i].push_back(j);
}else{
v[j].push_back(i);
}
}else{
if(i<j){
v[j].push_back(i);
}else{
v[i].push_back(j);
}
}
}else{
if(j%2==0){
if(i<j){
v[j].push_back(i);
}else{
v[i].push_back(j);
}
}else{
if(i<j){
v[i].push_back(j);
}else{
v[j].push_back(i);
}
}
}
}
}
}
//finalizare
for(i=1;i<=n;i++){
for(j=0;j<v[i].size();j++){
a[i][v[i][j]]=1;
}
}
}else{
a[1][2] = a[1][4] = 1;
a[2][5] = a[2][6] = 1;
a[3][1] = a[3][2] = a[3][6] = 1;
a[4][2] = a[4][3] = a[4][6] = 1;
a[5][1] = a[5][3] = a[5][4] = 1;
a[6][1] = a[6][5] = 1;
int noduri = 6;
while( noduri < n){
noduri += 2;
a[noduri - 1][noduri] = 1;
for( i = 1; i <= noduri - 2; i++){
a[i][noduri-1] = 1;
a[noduri][i] = 1;
}
}
}
//afisare
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
fout<<a[i][j];
}
fout<<"\n";
}
return 0;
}