关注
大佬 为啥我这样写只有60%,想到走过的路要再走了,但是还是没过
func numberOfPatrolBlocks(m int, n int, block [][]int32) (res int32) {
dx := []int{0, 1, 0, -1}
dy := []int{1, 0, -1, 0}
x, y, d := 0, 0, 0
st := make([][]int, m)
for i := 0; i < m; i++ {
st[i] = make([]int, n)
}
var tt func(int, int) bool
tt = func(a, b int) bool {
if a >= 0 && a < m && b >= 0 && b < n && st[a][b] < 1000 && block[a][b] == 0 {
return true
}
return false
}
var check func(int, int) bool
check = func(a, b int) bool {
for i := 0; i < 4; i++ {
k := (d + i) % 4
aa, bb := x+dx[k], y+dy[k]
if tt(aa, bb) {
d = k
return true
}
}
return false
}
for true {
if st[x][y] == 0 {
//fmt.Println(x, y)
res++
}
st[x][y]++
if !check(x, y) {
break
}
x, y = x+dx[d], y+dy[d]
}
return
}
查看原帖
点赞 3
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
4016次浏览 63人参与
# 找工作的破防时刻 #
251406次浏览 1949人参与
# 程序员找工作至少要刷多少题? #
8473次浏览 131人参与
# OPPO求职进展汇总 #
770772次浏览 5396人参与
# 刚入职的你踩过哪些坑 #
3865次浏览 87人参与
# 我的AI电子员工 #
26020次浏览 159人参与
# 为了减少AI幻觉,你注入过哪些设定? #
1664次浏览 53人参与
# 你投递的公司有几家约面了? #
157713次浏览 995人参与
# 论秋招对个人心气的改变 #
5439次浏览 97人参与
# 程序员能干到多少岁? #
5442次浏览 85人参与
# 一张图晒一下你的AI员工 #
2689次浏览 61人参与
# 牛客AI体验站 #
2896次浏览 81人参与
# 我现在比当时_,你想录用我吗 #
3445次浏览 59人参与
# 牛客租房专区 #
146626次浏览 1463人参与
# AI Coding的使用心得 #
2126次浏览 56人参与
# 关于春招/暑期实习,你想知道哪些信息? #
3633次浏览 77人参与
# 晒晒你司的新年福利 #
3734次浏览 67人参与
# 腾讯工作体验 #
563310次浏览 3688人参与
# 实习,不懂就问 #
165021次浏览 1470人参与
# 如果公司降薪,你会跳槽吗? #
138862次浏览 890人参与