Uma formiga operária caminha aleatoriamente em uma malha 5x5. A caminhada começa no
quadrado central. A cada passo, a formiga se desloca para um quadrado vizinho de forma
randômica, mas sem deixar malha. Desta forma, há 2, 3 ou 4 possíveis movimentos a cada passo,
dependendo da posição da formiga.
Ao inicio da caminhada, uma semente é colocada em cada quadrado da linha inferior. Se a formiga
já não estiver carregando uma semente e chegar na linha de baixo que contem uma semente, ele
começará a carregar esta semente até que, eventualmente, ela chegue na linha de cima. A formigar
irá depositar a semente no primeiro quadrado vazio da linha superior que ela alcançar.
Qual é o número esperado de passos até que todas as sementes estejam na linha superior? Responda
com seis casas decimais.
No caso estou tendo alguns problemas para que as sementes que fiquem na parte superior
e nas restrições que a formiga pode se locomover
#include<stdio.h>
#include<stdlib.h>
int main(){
int i,j,mat[5][5],li,co,a;
for(i=0;i<5;i++){
for(j=0;j<5;j++)
if(i==4){
mat[j]=1;
}else{
mat[j]=0;
mat[2][2]=2;
}
}
for(i=0;i<5;i++){
for(j=0;j<5;j++)
printf("\t%3d ",mat[j]);
printf("\n\n");
}
do{
printf("\n\n\t****COORDENADA DA POSICAO QUE A FORMIGA VAI OCULPAR****");
printf("\n\tLINHA: ");
scanf("%d",&li);
printf("\n\tCOLUNA: ");
scanf("%d",&co);
for(i=0;i<5;i++){
for(j=0;j<5;j++)
if(i==4){
mat[j]=1;
}else{
mat[j]=0;
mat[li][co]=2;
}
}
for(i=0;i<5;i++){
for(j=0;j<5;j++)
printf("\t%3d ",mat[j]);
printf("\n\n");
}
}while(li!=9);
return 0;
}