ce e gresit la dinamica asta ca iau numai 10 pct
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{int u=0;
fscanf(f,"%d",&z);
if(z==1)
{m[j]=1;
}
if(m[i-1][j-1]!=0&&z==1)
{
if(m[i-1][j]==m[j-1])
{if(m[i-m[i-1][j]][j-m[i-1][j]]!=0)
m[j]=m[i-1][j]+1;
else
{m[j]=m[i-1][j];
}
}
else
if(m[i-1][j]>m[j-1]&&(m[i-1][j]!=0&&m[j-1]!=0))
m[j]=m[i-1][j];
else
if(m[i-1][j]<m[j-1]&&(m[i-1][j]!=0&&m[j-1]!=0))
m[j]=m[j-1];
}
}
am gasit problema