Afişează mesaje
Pagini: [1]
1  infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 1163 Tsunami : Martie 06, 2012, 07:20:17
si eu si un coleg avem aceeasi problema:killed by signal 11
de asemenea am luat testele de la oni si,uimitor,imi da aceeasi eroare si in mingw
ies undeva din stiva sau ceva?

Cod:
#include <stdio.h>
FILE *f,*g;
char a[1005][1005];
long s;
int n,m,h,i,j,k;
long cauta(int ii,int jj)
{
long aux;
aux=1;
a[ii][jj]=0;
if((a[ii][jj-1]<h)&&(a[ii][jj-1])){aux=aux+cauta(ii,jj-1);}
if((a[ii][jj+1]<h)&&(a[ii][jj+1])){aux=aux+cauta(ii,jj+1);}
if((a[ii+1][jj]<h)&&(a[ii+1][jj])){aux=aux+cauta(ii+1,jj);}
if((a[ii-1][jj]<h)&&(a[ii-1][jj])){aux=aux+cauta(ii-1,jj);}
return aux;
}
int main()
{
f=fopen("tsunami.in","r");
g=fopen("tsunami.out","w");
fscanf(f,"%d%d%d",&n,&m,&h);
for(i=1;i<=n;i++){
     a[i][0]=11;
     a[i][m+1]=11;
}
for(j=1;j<=m;j++){
     a[0][j]=11;
     a[n+1][j]=11;
}
for(i=1;i<=n;i++){
  for(j=1;j<=m;j++){
 fscanf(f,"%d",&k);
 if(k>=11){a[i][j]=11;}
 else{a[i][j]=k;}
  }
}
  s=0;
for(i=1;i<=n;i++){
  for(j=1;j<=m;j++){
    if((a[i][j]<h)&&(a[i][j])){
       if((a[i][j-1]==0)||(a[i][j+1]==0)||(a[i+1][j]==0)||(a[i-1][j]==0)){
     s=s+cauta(i,j);
}
 }
  }
}
fprintf(g,"%d",s);
fclose(f);
fclose(g);
return 0;
}

Editat de moderator: Foloseste tagul code pentru a afisa codul sursa.
Pagini: [1]
Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines