Pagini recente » Cod sursa (job #1510803) | Cod sursa (job #968610) | Cod sursa (job #844050) | Cod sursa (job #1364497) | Cod sursa (job #1448889)
#include<fstream>
#include<vector>
#include<cstring>
using namespace std;
ifstream fin("oras.in");
ofstream fout("oras.out");
vector<int> v[205];
int modul(int x){
if(x<0)
return -x;
return x;
}
int d[205],f[205];
void BFS(int S){
memset(d,0,sizeof(d));
memset(f,0,sizeof(f));
int p,c[200*200+5],u,i;
p=1;
u=1;
c[1]=S;
f[S]=1;
while(p<=u){
for(i=0;i<v[ c[p] ].size();i++){
if( f[ v[ c[p] ][ i ] ] == 0 ){
f[ v[ c[p] ][ i ] ]=1;
c[++u]=v[ c[p] ][ i ];
d[ v[ c[p] ][ i ] ]=d[ c[p] ]+1;
}
}
p++;
}
}
int a[205][205],i,j,n;
int main(){
fin>>n;
if(n==4){
fout<<"-1\n";
return 0;
}
for(i=1;i<=n-1;i++){
v[i].push_back(i+1);
}
v[n].push_back(1);
for(i=1;i<=n;i++){
BFS(i);
for(j=1;j<=n;j++){
if(d[j]>2){
v[i].push_back(j);
BFS(i);
}
}
}
for(i=1;i<=n;i++){
for(j=0;j<v[i].size();j++){
a[i][v[i][j]]=1;
}
}
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
fout<<a[i][j];
}
fout<<"\n";
}
return 0;
}