Cod sursa(job #54877)

Utilizator razvi9Jurca Razvan razvi9 Data 25 aprilie 2007 21:48:45
Problema Castel Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include<stdio.h>
int a[151][151],c[150*150+1],v[151][151],ok,i,j,n,m,k;
int main()
{freopen("castel.in","r",stdin);
 freopen("castel.out","w",stdout);
 scanf("%d %d %d",&n,&m,&k);
 for(i=1;i<=n;i++)   for(j=1;j<=m;j++)    scanf("%d",&v[i][j]);
 i=k/n+1-k%n?0:1;
 j=k%n?k%n:n;
 c[k]=1;
 a[i][j]=1;
 for(ok=1;ok;)
 {ok=0;
  for(i=1;i<=n;i++)
   for(j=1;j<=m;j++)
    if(!a[i][j])
     if(c[v[i][j]]&&(a[i+1][j]||a[i-1][j]||a[i][j+1]||a[i][j-1]))
      {ok=1;
       a[i][j]=1;
       c[(i-1)*m+j]=1;}}
 k=0;
 for(i=1;i<=n;i++)
  for(j=1;j<=n;j++)
   if(a[i][j]) k++;
 printf("%d",k);
 fclose(stdout);
 return 0;}