i
cludestdiohr
i
cludestdlibhr
typedefstructQizir
r
i
txx轴坐标r
i
tyy轴坐标r
Qizipare
t上一步r
Qizi
ext下一步r
i
tdirac已试探方向r
Qizir
i
tqipa
881表示都没有被走过r
i
tdiractio
8212212112122121128个方向r
i
tcur1只要有64个棋子就okr
Qiziheadtail第一个和最后一个r
i
tbushu1r
r
函数申明r
voidi
it_headr
i
tfi
dr
voidtuir
voidpri
tr
voidmataqipa
r
r
r
初始化第一个点r
voidi
it_headr
r
headQizimallocsizeofQizir
tailheadr
headdirac1r
head
extNULLr
headpare
tNULLr
headx0r
heady0r
r
r
查找是否还有路r
i
tfi
dr
r
i
ta0r
r
Qizipr
pQizimallocsizeofQizir
查看8个方向的位子是否可以放旗子r
whiletaildirac8a0r
r
本棋子的方向加一即下一个棋子的方向r
taildiracr
r
加上下一个方向的棋子r
r
r
pxtailxdiractio
taildirac0r
pytailydiractio
taildirac1r
ppare
ttailr
pdirac1r
p
extNULLr
r
判断棋子是否合理r
ifpx8px0r
py8py0r
qipa
pxpy00是表示没有被走过r
a1r
r
ifa1能有下一步棋子r
r
qipa
pxpy1r
tail
extpr
tailpr
r
retur
ar
r
r
如果没有下一步棋子,那么退一个r
voidtuir
r
qipa
tailxtaily0r
curr
tailtailpare
tr
tail
extNULLr
r
r
打印走法r
voidpri
tr
r
i
ta0r
Qizip1r
p1headr
whilep1NULLr
r
pri
tf