关注
import java.util.*;
public class Main{
static Point[] po;
static int[][] b;
static boolean bo = false;
public void dfs(int[][] a, int count, int p, int x, int y) {
int n = a.length;
int m = a[0].length;
if (x == 0 && y == m -1) {
if (p >= 0) {
bo = true;
System.out.print("[0,0],");
for (int i = 0; i < count - 1; i ++) {
System.out.print("["+po[i].x+","+po[i].y+"],");
}
System.out.println("["+po[count - 1].x+","+po[count - 1].y+"]");
}
} else {
if ((x >= 0 && x < n)&&(y >= 0 && y < m - 1)&&a[x][y + 1] != 0&&b[x][y+1] == 0) {
y++;
count++;
p--;
Point point = new Point(x, y);
po[count - 1] = point;
b[x][y] = 1;
dfs(a, count, p,x,y);
b[x][y] = 0;
y--;
count--;
p++;
po[count] = null;
} else
if ((x > 0 && x < n)&&(y >= 0 && y < m)&&a[x - 1][y] != 0&&b[x-1][y] == 0) {
x--;
count++;
p = p - 3;
Point point = new Point(x, y);
po[count - 1] = point;
b[x][y] = 1;
dfs(a, count, p,x,y);
b[x][y] = 0;
x++;
count--;
p = p + 3;
po[count] = null;
} else
if ((x >= 0 && x < n - 1)&&(y >= 0 && y < m)&&a[x + 1][y] != 0&&b[x + 1][y] == 0) {
x++;
count++;
Point point = new Point(x, y);
po[count - 1] = point;
b[x][y] = 1;
dfs(a, count, p,x,y);
b[x][y] = 0;
x--;
count--;
po[count] = null;
}
}
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
int p = sc.nextInt();
int[][] a = new int[n][m];
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++)
a[i][j] = sc.nextInt();
}
Main tutle = new Main();
tutle.po = new Point[10000];
tutle.b = new int[n][m];
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++)
tutle.b[i][j] = 0;
}
tutle.b[0][0] = 1;
tutle.dfs(a,0,p,0,0);
if (!tutle.bo) {
System.out.println("Can not escape!");
}
}
}
class Point {
int x;
int y;
Point(int x, int y) {
this.x = x;
this.y = y;
}
}
写的好丑,也没有添加最优判断但还是ac了,只能说测试用例比较好过。
查看原帖
点赞 4
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 面试被问“你的缺点是什么?”怎么答 #
5200次浏览 83人参与
# 租房找室友 #
7820次浏览 53人参与
# 水滴春招 #
14784次浏览 168人参与
# 25届秋招公司红黑榜 #
238078次浏览 988人参与
# 入职第四天,心情怎么样 #
10940次浏览 56人参与
# 简历无回复,你会继续海投还是优化再投? #
48513次浏览 560人参与
# 机械人选offer,最看重什么? #
69056次浏览 449人参与
# 牛友们的论文几号送审 #
15999次浏览 500人参与
# 软开人,你觉得应届生多少薪资才算合理? #
81328次浏览 496人参与
# 国企还是互联网,你怎么选? #
109095次浏览 852人参与
# 22届毕业,是读研还是拿外包offer先苟着 #
4639次浏览 27人参与
# 机械人,你的秋招第一份简历被谁挂了 #
125790次浏览 1925人参与
# 总结:哪家公司面试体验感最差 #
33254次浏览 169人参与
# 职场新人生存指南 #
198798次浏览 5496人参与
# 安利/避雷我的专业 #
62065次浏览 481人参与
# 读研or工作,哪个性价比更高? #
26029次浏览 356人参与
# 听劝,这个公司值得去吗 #
382289次浏览 1515人参与
# 参加完秋招的机械人,还参加春招吗? #
26671次浏览 275人参与
# 你觉得早上几点上班合适? #
61645次浏览 256人参与
# 如果重来一次你还会读研吗 #
155657次浏览 1705人参与
# 你们的毕业论文什么进度了 #
900393次浏览 8944人参与