移動 II 廣搜,記錄路徑)

2021-09-08 00:11:54 字數 1693 閱讀 1717

移動 ii

time limit: 1000 ms

memory limit: 65536 k

total submit: 27(14 users)

total accepted: 16(14 users)

special judge: no

description

在座標軸[0,500]上存在兩點a,b。

點a可以多次移動,每次移動需要遵循如下規則:

1.向後移動一步。

2.向前移動一步。

3.跳到當前座標*2的位置上。

要求:利用寬搜演算法程式設計求解從a移動到b的步數最少的方案,為使答案統一,要求搜尋按照規則1、2、3的順序進行。

input

輸入包含多組測試用例。

每組測試用例要求輸入兩個整數a,b。

output

按要求輸出步數最少的方案。

向後走輸出"step back"。

向前走輸出"step forward"。

跳躍輸出"jump"。

對於每組結果需要追加乙個空行。

sample input

5 17

5 18

3 499

sample output

step back

jump

jump

step forward

jump

step back

jump

step forward

jump

jump

jump

step back

jump

jump

step forward

jump

jump

step back

source

2012 spring contest 4 - search technology

author

盧俊達

#include

#include

#include

using

namespace std;

int q[100000];

int cl,op;

int a,b;

int used[1000];

int root[1000];

void bfs()

if(used[tmp-1]==0&&tmp-1>=0&&tmp-1

<=600)

if(used[tmp+1]==0&&tmp+1>=0&&tmp+1

<=600)

if(used[tmp*2]==0&&tmp*2>=0&&tmp*2

<=600)

}

}

void print(int i)

print(root[i]);

if(i==root[i]-1)printf("

step back\n

");

else

if(i==root[i]+1)

printf("

step forward\n

");else printf("

jump\n

");}

int main()

return

0;}

迷宮 II 廣搜

問題描述 山山厭倦了普通的迷宮,他準備挑戰奇妙的迷宮 ii。迷宮 ii 是由若干三角形拼成的六邊形 見樣例 其中有些點可以通過,有些點不能通過。你需要計算從起點走到終點至少要經 過多少點 不包括起點終點 輸入格式 第一行,乙個整數 n,表示地圖邊長 接下來若干行字串,表示乙個地圖。其中.表示可以經過...

迷宮問題 (廣搜並記錄路徑)

迷宮問題 定義乙個二維陣列 int maze 5 5 它表示乙個迷宮,其中的1表示牆壁,0表示可以走的路,只能橫著走或豎著走,不能斜著走,要求程式設計序找出從左上角到右下角的最短路線。input 乙個5 5的二維陣列,表示乙個迷宮。資料保證有唯一解。output 左上角到右下角的最短路徑,格式如樣例...

走迷宮(廣搜路徑記錄(路徑唯一))

題目 給乙個5 5的矩陣模擬迷宮,0代表可以走的格仔,1代表牆壁,只有0和1並且入口為左上角,出口為右下角,找出從入口到出口的最短路徑,測試資料的最短路徑唯一 並按座標形式輸出,x,y x代表從上到下第幾行 從零開始 y代表從左到右第幾列 從零開始 include include include u...