Pagini recente » Cod sursa (job #1486740) | Cod sursa (job #2245004) | Cod sursa (job #711936) | Cod sursa (job #2153513) | Cod sursa (job #133770)
Cod sursa(job #133770)
#include<stdio.h>
FILE*f=fopen("oras.in","r");
FILE*g=fopen("oras.out","w");
char a[201][201];
int n;
void gaseste(int n)
{
int i;
//am fixate nodurile n-2, si adaug nodurile n-1,n.
a[n-1][n]='1'; //am nod de la n-1, la n
for(i=1;i<=n-2;++i)
{
a[i][n-1]='1';
a[n][i]='1'; //drum: n-1 -> n -> i
}
}
int main()
{
int i,j;
fscanf(f,"%d",&n);
for(i=1;i<=n;++i) for(j=1;j<=n;++j) a[i][j]='0';
a[1][2]='1'; a[2][3]='1'; a[3][1]='1';
if(n==4) fprintf(g,"-1\n");
else
{
//am fixat graful cu 3 noduri:
for(i=5;i<=n;i=i+2)
gaseste(i);
}
for(i=1;i<=n;++i)
{
for(j=1;j<=n;++j)
fprintf(g,"%c ",a[i][j]);
fprintf(g,"\n");
}
return 0;
}