关注
//棋盘问题
public class Main {
static int REScount = Integer.MAX_VALUE;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
int k = sc.nextInt();
int[][] arr = new int[n][m];
for(int i=0;i<k;i++){
int x = sc.nextInt();
int y = sc.nextInt();
arr[x][y] = 1;
}
HashSet<String> set = new HashSet<>();
int startX = 0;
int stattY = 0;
int endX = n-1;
int endY = m-1;
process(0,arr,set,startX,stattY,endX,endY);
if(REScount == Integer.MAX_VALUE){
System.out.println(0);
}else{
System.out.println(REScount);
}
}
//
public static void process(int count,int[][] arr,HashSet<String> set,int startX,int startY,int endX,int endY){
if(startX == endX && startY == endY){//到达终点
REScount = Math.min(count, REScount);
return;
}else if( startX<0 || startX>=arr.length || startY<0 || startY>=arr[0].length){//越界
return ;
}else if(arr[startX][startY] ==1){//障碍物不能走
return;
}else {
String loc = startX+"+"+startY;
if(set.contains(loc)){//已经走过
return ;
}else{
set.add(loc);//添加次点
//上下左右走
process(count+1,arr,set,startX-1,startY,endX,endY);
process(count+1,arr,set,startX+1,startY,endX,endY);
process(count+1,arr,set,startX,startY-1,endX,endY);
process(count+1,arr,set,startX,startY+1,endX,endY);
set.remove(loc);//移除改点
}
}
}
}
查看原帖
点赞 评论
相关推荐
牛客热帖
更多
- 1... 一个三无废物985硕士的求救帖!Help8333
- 2... 两年后重看秋招——后悔选择读研,可到底该怎么做?7563
- 3... 秋招公司情报局,分享线索得牛币💰7466
- 4... 字节客户端一面7369
- 5... 月薪一万五,天天都喊苦5607
- 6... 技术不是唯一答案:计算机大学生的第一堂社会课4465
- 7... 手机厂工作一年了,给想进手机行业的兄弟们写点建议4118
- 8... 字节暑期实习三周跑路会被拉黑吗3820
- 9... 机械读研的核心优势是?3242
- 10... 凌晨一点我不可以睡觉吗?我要被你侮辱?我晚上会做噩梦的呜呜呜3037
正在热议
更多
# 大厂面试初体验 #
5766次浏览 42人参与
# 如果可以,你希望哪个公司来捞你 #
101034次浏览 459人参与
# 如何提高实习转正率? #
2380次浏览 30人参与
# leader认为你工作不认真怎么办 #
30945次浏览 142人参与
# 你遇到过哪些神仙同事 #
100384次浏览 724人参与
# 我的国央企投递进展 #
46704次浏览 292人参与
# 国企是理工四大天坑的最好选择吗 #
13715次浏览 95人参与
# 五一之后,实习真的很难找吗? #
78566次浏览 515人参与
# 机械人,你被简历秒挂的企业有哪些? #
43040次浏览 281人参与
# 招聘要求与实际实习内容不符怎么办 #
113041次浏览 770人参与
# 如果公司给你放一天假,你会怎么度过? #
17140次浏览 128人参与
# 找工作时的取与舍 #
80509次浏览 568人参与
# 投递几十家公司,到现在0offer,大家都一样吗 #
246370次浏览 1792人参与
# 三一重工求职进展汇总 #
15119次浏览 67人参与
# OPPO求职进展汇总 #
662979次浏览 5041人参与
# 你的秋招第一场笔试是哪家 #
142848次浏览 1453人参与
# 总结:哪家公司面试体验感最差 #
61128次浏览 276人参与
# 如果重来一次你还会读研吗 #
176953次浏览 1786人参与
# 机械人,说说你的烦心事 #
69735次浏览 839人参与
# 面试时被问的最奇葩的问题 #
23020次浏览 130人参与