Red de conocimiento informático - Conocimiento sistemático - Resolver un ejercicio de programación

Resolver un ejercicio de programación

Esta pregunta es un problema de Hammill. Aún no lo he hecho, pero mi idea es correcta. Echa un vistazo a mi programa.

#include

usando el espacio de nombres std;

#define N 21

int m,n;

int dead1,dead2 ;

int a[N][N];

bool bj[N][N];

bool dfs(int x,int y,int num);

suma nula(int x)

{

if(x<=1)dead1++;

else dead2++;

}

búsqueda bool(int i,int j)

{

bool x=true;

if(!bj[i-1][j] && i>1){sum(a[i-1][j]);/*cout<

if(!bj[i][j-1] && j>1){sum(a[i][j-1]);/*cout<

if(!bj[i+1][j] && i

if(!bj[i] [j+1] && j

return x;

}

void init(void)

{

freopen("mt. in","r",stdin);

freopen("mt.out","w",stdout);

cin>>m>>n;

while(m || n){

for(int i=1;i<=m;i++)

for(int j=1;j<= n;j++){

cin>>bj[i][j];

if(bj[i][j])continuar;

if (i!=1)a[i-1][j]++;

si(j!=1)a[i][j-1]++;

if(j!=n)a[i][j+1]++;

if(i!=n)a[i+1][j]++;

/*if(i!=n){if(!a[i-1][j] && !bj[i-1][j]){break;dead=3;}

if(a[i-1][j]==1 && !bj[i-1][j])muerto

++;}

if(i==n){if(!a[i][j-1] && !bj[i][j-1]){break;dead=3; }

if(a[i][j-1]==1 && !bj[i][j-1])muerto++;}

if(i==m && j==n){if(!a[i][j] && !bj[i][j]){break;dead=3;}

if(a[i][j ]==1 && !bj[i][j])muerto++;}*/

//if(!a[i][j]){num++;if(!(sx && sy) ){sx=i;sy=j;}}

}

para(int i=1;i<=m;i++)

para( int j=1;j<=n;j++)

if(a[i][j]==1 && !bj[i][j])if(buscar(i,j)) {dead2=5;break;}

if(dead1<=2 && dead2<=1)cout<<"Sí"<

/*cout<

for(int i=1;i<=m;i++){

for(int j=1;j< =n;j++)

cout<

cout<

}

cout<

for(int i=1;i<=m;i++){

for(int j=1;j<=n; j++)

cout<

cout<

}

cout<<' '<

//if(dfs(sx,sy,num))cout<<"Sí";else cout< <"No";*/

cin>>m>>n;

memset(a,false,sizeof(a));

dead1= muerto2=0;

p>

}

return;

}

/*bool dfs(int x,int y,int num)

{

si(x>m || y>n || !x || !y)devuelve 0;

si(a[x][y])devuelve 0 ;

if(!num)return 1;

a[x][y]=1;

if(dfs(x-1,y, num-1))return 1;

if(dfs(x+1,y,num-1))return 1;

if(dfs(x,y-1, num-1))return 1;

if(dfs(x,y+1,num-1))return 1;

a[x][y]=0;

retorno 0;

}*/

int main(void)

{

init() ;

//sistema("pausa");

devuelve 0;

}