F Horse Pro 馬走棋盤 BFS

2022-05-03 12:27:23 字數 993 閱讀 2764

豆豆也已經開始學著玩象棋了,現在豆豆已經搞清楚馬的走法了,但是豆豆不能確定能否在 100

'>100

步以內從乙個點到達另乙個點(假設棋盤無限大)。

第一行輸入兩個整數 x1,

y1'>x1,y1

表示當前馬所在的位置。

第二行輸入兩個整數 x2,

y2'>x2,y2

表示豆豆想把馬走在的位置。

−10000≤x

1,x2

,y1,

y2≤10000

'>−10000≤x1,x2,y1,y2≤10000

如果能夠在100步以內(包括100步)從(x1

,y1)

'>(x1,y1)

100'>到達 (x2

,y2)

'>(x2,y2)

則輸出到達所需要的最小步數,否則輸出 −

1'>−1

1 1

2 3

1

#include#include

#include

#include

#include

#include

#include

#include

#include

#define ll long long

using

namespace

std;

int dir[8][2] = ;

intsx,sy,ex,ey;

struct

node

;map

int,int>,int>m;//

標記點是否走過,因為座標有負數,不能用陣列

/*一開始是想用結構體的,mapm會編譯報錯,因為map是內部有序的

如果使用結構體的話,應該先重在小於號 > 使結構體保持有序

*/int

bfs()

}}int

main()

騎士旅行問題(騎士走棋盤)

問題描述 乙個騎士在棋盤中,給予其乙個初始位置,求其是否能夠走完整個棋盤。騎士的走法和中國象棋的馬走法相同,在前進過程中,騎士在其落足過的地方不能再次落足。如下 騎士走棋盤問題,騎士的走法與象棋中馬的走法相同,要求騎士便利棋盤中所有的點,但不能重複走乙個點兩次 本題採用優先選擇 回溯到方法進行,每次...

馬踏棋盤python 馬踏棋盤python實現

import collections import random class checkerboard object 初始化棋盤 def init self,len self.len len self.position has gone set def init checkerboard self ...

馬跳棋盤的問題

問題描述 在中國象棋的半個棋盤中 楚河漢界的一邊 馬從左下角跳到右上角的所有正確的跳法有哪些?只能往右邊跳,包括右上和右下,不能後退 這個問題是我們的技術總監告訴我們的,他說這是他上高中時參加的計算機程式設計比賽中的一道題 高中時就能做這樣的題,真是羨慕 如果沒學資料結構的話,寫起來就不太好下手。正...