南陽OJ 58(最小步數,迷宮問題)

2021-08-22 19:32:07 字數 1214 閱讀 1882

時間限制:3000 ms  |  記憶體限制:65535 kb

難度:4

輸入第一行輸入乙個整數n(0輸出

輸出最少走幾步。

樣例輸入

2

3 1 5 7

3 1 6 7

樣例輸出

12

11

描述

這有乙個迷宮,有0~8行和0~8列:

1,1,1,1,1,1,1,1,1

1,0,0,1,0,0,1,0,1

1,0,0,1,1,0,0,0,1

1,0,1,0,1,1,0,1,1

1,0,0,0,0,1,0,0,1

1,1,0,1,0,1,0,0,1

1,1,0,1,0,1,0,0,1

1,1,0,1,0,0,0,0,1

1,1,1,1,1,1,1,1,1

0表示道路,1表示牆。

現在輸入乙個道路的座標作為起點,再如輸入乙個道路的座標作為終點,問最少走幾步才能從起點到達終點?

(注:一步是指從一座標點走到其上下左右相鄰座標點,如:從(3,1)到(4,1)。)

#include#include#define max 1000

int mg[9][9]=,

, ,, ,

, ,, ,

};typedef struct

box;

typedef struct

qu;bool mgpath(int a,int b,int c,int d);

bool en(qu *&s,box e)

bool de(qu *&s,box &e)

int length=0;

int main()

return 0;

}bool mgpath(int a,int b,int c,int d), ,

, ,, ,

, ,,};

e.i=a; e.j=b; e.pre=-1;

en(s,e);

mg[a][b]=-1;

while(s->front!=s->rear)

//printf("%d\n",length);

return true;

}else

if(mg[i1][j1]==0)

}}

} return false;

}

南陽oj58最少步數

時間限制 3000 ms 記憶體限制 65535 kb 難度 4 描述 這有乙個迷宮,有0 8行和0 8列 1,1,1,1,1,1,1,1,1 1,0,0,1,0,0,1,0,1 1,0,0,1,1,0,0,0,1 1,0,1,0,1,1,0,1,1 1,0,0,0,0,1,0,0,1 1,1,0,...

58 最小步數

時間限制 3000 ms 記憶體限制 65535 kb 難度 4 描述 這有乙個迷宮,有0 8行和0 8列 1,1,1,1,1,1,1,1,1 1,0,0,1,0,0,1,0,1 1,0,0,1,1,0,0,0,1 1,0,1,0,1,1,0,1,1 1,0,0,0,0,1,0,0,1 1,1,0,...

NYOJ 58 最小步數(迷宮搜尋)

時間限制 3000 ms 記憶體限制 65535 kb 難度 4 描述 這有乙個迷宮,有0 8行和0 8列 1,1,1,1,1,1,1,1,1 1,0,0,1,0,0,1,0,1 1,0,0,1,1,0,0,0,1 1,0,1,0,1,1,0,1,1 1,0,0,0,0,1,0,0,1 1,1,0,...