#include #include #include using namespace std; struct koord { int x; int y; koord(int _x=0,int _y=0) { x=_x; y=_y; } }; queueQ; bool bio[150][150]; int dx[]={0,0,1,-1}; int dy[]={1,-1,0,0}; int dist[150][150]; char polje[150][150]; int a,b; void bfs(int a1,int b1) { Q.push(koord(a1,b1)); bio[a1][b1]=true; while(!Q.empty()) { koord pos=Q.front(); Q.pop(); for(int i=0;i<4;++i) { koord dalje=koord(pos.x+dx[i],pos.y+dy[i]); if(dalje.x>=0 && dalje.x=0 && dalje.ydist[pos.x][pos.y]) { dist[dalje.x][dalje.y]=dist[pos.x][pos.y]; Q.push(dalje); } else if(dist[dalje.x][dalje.y]>dist[pos.x][pos.y]+(polje[dalje.x][dalje.y]-'0')) { dist[dalje.x][dalje.y]=dist[pos.x][pos.y]+(polje[dalje.x][dalje.y]-'0'); Q.push(dalje); } } } } } int main() { scanf("%d%d",&a,&b); while(a!=0 && b!=0) { int c=0,d=0,e=0,f=0; for(int i=0;i