ACM OJ 《迷宮問題》C

2021-10-18 23:46:25 字數 1281 閱讀 1135

定義乙個二維陣列:

int maze[5][5] = ;

它表示乙個迷宮,其中的1表示牆壁,0表示可以走的路,只能橫著走或豎著走,不能斜著走,要求程式設計序找出從左上角到右下角的最短路線。

乙個5 × 5的二維陣列,表示乙個迷宮。資料保證有唯一解。

左上角到右下角的最短路徑,格式如樣例所示。

0 1 0 0 0

0 1 0 1 0

0 0 0 0 0

0 1 1 1 0

0 0 0 1 0

(0, 0)

(1, 0)

(2, 0)

(2, 1)

(2, 2)

(2, 3)

(2, 4)

(3, 4)

(4, 4)

//

// main.cpp

// 迷宮問題

//// created by hiss on 2020/10/24.

//#include

#include

using namespace std;

int i, j, ff, num, front, a[5]

[5], b[5]

[5], c[5]

[5];

stackx;

stacky;

void

dfs(int i,int j)

dfs(i, j +1)

;dfs

(i +

1, j)

;dfs

(i -

1, j)

;dfs

(i, j -1)

;}int main()

ff =1;

//每個點都深搜一次

for(i =

0; i <

5; i ++)}

//從最後乙個節點倒著尋找

front = c[4]

[4];

int fu = front;

for(num = fu -

1; num >

0; num --)}

}}//輸出路線,按出棧順序

while

(!x.

empty()

&&!y.

empty()

) cout <<

"("<<

4<<

", "

<<

4<<

")"<< endl;

return0;

}

ACM OJ 《非常可樂》C

大家一定覺的運動以後喝可樂是一件很愜意的事情,但是seeyou卻不這麼認為。因為每次當seeyou買了可樂以後,阿牛就要求和seeyou一起分享這一瓶可樂,而且一定要喝的和seeyou一樣多。但seeyou的手中只有兩個杯子,它們的容量分別是n 毫公升和m 毫公升 可樂的體積為s s 101 毫公升...

ACM OJ 《馬的遍歷》C

有乙個n m的棋盤 1一行四個資料,棋盤的大小和馬的座標 乙個n m的矩陣,同一行元素之間用空格分離。代表馬到達某個點最少要走幾步。不能到達則輸出 1。3 3 1 1 0 3 2 3 1 1 2 1 4 main.cpp 馬的遍歷 created by hiss on 2020 10 31.incl...

ACM OJ 《奇怪的電梯》C

有一天我做了乙個夢,夢見了一種很奇怪的電梯。大樓的每一層樓都可以停電梯,而且第i層樓 1 i n 上有乙個數字ki 0 ki n 電梯只有四個按鈕 開,關,上,下。上下的層數等於當前樓層上的那個數字。當然,如果不能滿足要求,相應的按鈕就會失靈。例如 3,3,1,2,5代表了ki k1 3,k2 3,...