Pagini recente » Cod sursa (job #3232919) | Cod sursa (job #640195) | Cod sursa (job #90269) | Cod sursa (job #1499336) | Cod sursa (job #265460)
Cod sursa(job #265460)
#include <fstream.h>
long lst[155][155],u[155];
int main()
{
long n,m,k,i,aux,q[155],sfc,inc,c,x;
ifstream fin("castel.in");
fin>>n>>m>>k;
for (i=1; i<=n*m; i++)
{
fin>>aux;
lst[aux][0]++;
lst[aux][lst[aux][0]]=i;
}
q[1]=k; inc=0; sfc=1; u[k]=1; c=1;
while (inc<=sfc)
{
inc++;
for (i=1; i<=lst[q[inc]][0]; i++)
{
x=lst[q[inc]][i];
if (u[x]==0)
{
if (u[x-1]==1 || u[x+1]==1 || u[x-m]==1 || u[x+m]==1)
{
u[x]=1;
sfc++;
q[sfc]=x;
c++;
} else
{
lst[x-1][0]++; lst[x-1][lst[x-1][0]]=x;
lst[x+1][0]++; lst[x+1][lst[x+1][0]]=x;
lst[x-m][0]++; lst[x-m][lst[x-m][0]]=x;
lst[x+m][0]++; lst[x+m][lst[x+m][0]]=x;
}
}
}
}
ofstream fout("castel.out");
fout<<c;
fin.close();
fout.close();
return 0;
}