全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1442 2
2016-06-20
棋子从任何位置出发,走日字,走完整个棋盘,输出所走位置
# zhix,zhiy表示当前位置;
# x,y显示结果;
# zx,zy方向针;
# w存放位置的矩阵(是否走过),u存放可选步数的矩阵

zx <- c(1,-1,-2,-2,-1,1,2,2)
zy <- c(-2,-2,-1,1,2,2,1,-1)

w <- matrix(0,nrow=5,ncol=9)
u <- matrix(c(2,3,4,4,4,4,4,3,2,
              3,4,6,6,6,6,6,4,3,
              4,6,8,8,8,8,8,6,4,
              3,4,6,6,6,6,6,4,3,
              2,3,4,4,4,4,4,3,2),
             nrow=5,ncol=9,byrow=T)
x <- rep(0,45)
y <- rep(0,45)
fangxiang <- rep(0,44)

zhix=4
zhiy=2
w[zhix,zhiy]=1
x[1]=zhix;y[1]=zhiy

for (i in 2:45) {
    min=9
    for (j in 1:8) {
        
        newx <- zhix + zx[j]  ;  newy <- zhiy + zy[j]
        if (newx>0 & newx<6 & newy>0 &newy<10) {
            if (w[newx,newy]==0){
               if (u[newx,newy]<min) {min=u[newx,newy] ; z=j }               
            }
        }
    }
    fangxiang[i]=z
    zhix = zhix + zx[z]   ;   zhiy = zhiy +zy[z]
    x[i] = zhix         ;   y[i] = zhiy
    w[zhix,zhiy] = 1
}

x
y
fangxiang
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-6-20 15:46:38
程序不知道哪里出错,有的初始位置不能走完半个棋盘啊
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-6-20 15:47:45
程序不知道哪里出错,有的初始位置无法走完半个棋盘,棋盘是5*9的
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群