Pagini recente » Cod sursa (job #2004696) | Cod sursa (job #2486348) | Cod sursa (job #1382843) | Cod sursa (job #584554) | Cod sursa (job #1048085)
#include<fstream>
using namespace std;
ifstream f("castel.in");
ofstream g("castel.out");
int n,m,i,j,k,l,o,nr,xi,yi,cd;
int a[155][155];
int q[22505][2],b[155][155];
bool ok,d[22505];
int dx[]={-1,0,1,0};
int dy[]={0,1,0,-1};
int main()
{
f>>n>>m>>k;
nr=1;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
{
f>>a[i][j];
b[i][j]=nr;
if(nr==k) xi=i,yi=j;
nr++;
}
q[0][0]=xi; q[0][1]=yi;
d[b[xi][yi]]=1;
ok=1; nr=0; cd=1;
a[xi][yi]=0;
int xx,yy;
while(ok==1)
{
ok=0;
for(i=0;i<=nr;i++)
{
for(j=0;j<4;j++)
{
xx=q[i][0]+dx[j];
yy=q[i][1]+dy[j];
if(a[xx][yy]!=0)
if(d[a[xx][yy]]==1)
{
nr++;
q[nr][0]=xx;
q[nr][1]=yy;
a[xx][yy]=0;
d[b[xx][yy]]=1;
cd++;
ok=1;
}
}
}
}
g<<cd;
return 0;
}