首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
jakessc
2016-08-02 22:09
西安电子科大 Java
关注
已关注
取消关注
网易Java工程师内推笔试交流
有人搞定第二个编程题吗,走迷宫那个。有弄明白的求解释一下,感觉个人理解题意有问题。
#网易#
提示
全部评论
推荐
最新
楼层
明经
蚂蚁集团_高级开发工程师
import java.util.Queue; import java.util.Scanner; import java.util.concurrent.LinkedBlockingQueue; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); Queue<Integer> yqueue=new LinkedBlockingQueue<>(); Queue<Integer> xqueue=new LinkedBlockingQueue<>(); while (in.hasNext()) { int n=in.nextInt(); int m=in.nextInt(); char[][] cs=new char[55][55]; bu[] bu=new bu[55]; in.nextLine(); for(int i=0;i<n;i++) { cs[i]=in.nextLine().toCharArray(); } int x0=in.nextInt(); int y0=in.nextInt(); cs[x0][y0]='x'; int k=in.nextInt(); for(int i=0;i<k;i++) { int dx=in.nextInt(); int dy=in.nextInt(); bu[i]=new bu(dx, dy); } int[][] a=new int[55][55]; a[x0][y0]=0; xqueue.add(x0); yqueue.add(y0); int x,y; int max=-1; while(!xqueue.isEmpty()) { x=xqueue.poll(); y=yqueue.poll(); for(int i=0;i<k;i++) { // System.out.println(i); if(x+bu[i].getDx()>=0&&y+bu[i].getDy()>=0&& x+bu[i].getDx()<n&&y+bu[i].getDy()<m&& a[x][y]+1>a[x+bu[i].getDx()][y+bu[i].getDy()]&& cs[x+bu[i].getDx()][y+bu[i].getDy()]=='.') { a[x+bu[i].getDx()][y+bu[i].getDy()]=a[x][y]+1; cs[x+bu[i].getDx()][y+bu[i].getDy()]='x'; xqueue.add(x+bu[i].getDx()); yqueue.add(y+bu[i].getDy()); if(a[x][y]+1>max) { max=a[x][y]+1; } // System.out.print(x+bu[i].getDx()); // System.out.println(y+bu[i].getDy()); } } } int y1=0; for(int x1=0,x2=n-1;y1<m;y1++) { if(a[x1][y1]!=0||a[x2][y1]!=0) { break; } } if(y1==m) { max=-1; } System.out.println(max); } } static class bu{ private int dx; private int dy; bu(){} bu(int dx,int dy) { this.dx=dx; this.dy=dy; } public int getDx() { return dx; } public int getDy() { return dy; } public void setDx(int dx) { this.dx = dx; } public void setDy(int dy) { this.dy = dy; } } }
点赞
回复
分享
发布于 2016-08-02 22:19
牛客2952189号
清华大学 Java
为什么一直头像上传失败,没有头像估计会死吧。
点赞
回复
分享
发布于 2016-08-03 02:03
mebixus
中国科学院大学 安卓
我都没理解题意……
点赞
回复
分享
发布于 2016-08-03 00:55
咔咔啦啦
山东科技大学 Java
我用的bfs 忘了求最大值了 结果就50%
点赞
回复
分享
发布于 2016-08-02 22:36
wodeqiangne
浙江大学 Java
import java.util.*; import java.util.*; public class Main{ static int max = 0; static byte[][] mat; static int[][] dp; static int k; static int[] dx; static int[] dy; static int n; static int m; static boolean[][] craw; static boolean flag = true; public static void main(String[] args){ Scanner scan = new Scanner(System.in); n = scan.nextInt(); m = scan.nextInt(); dp = new int[n][m]; scan.nextLine(); mat = new byte[n][m]; for(int i = 0; i < n; i++){ String tmp = scan.nextLine(); mat[i] = tmp.getBytes(); } for(int i = 0; i < n; i++) for(int j = 0; j < m; j++){ if((i == 0 || j== 0 || i == n-1 || j == m-1) && mat[i][j] == '.'){ dp[i][j] = Integer.MAX_VALUE; } } craw = new boolean[n][m]; for(int i = 0; i < n; i++) for(int j = 0; j < m; j++) craw[i][j] = false; int startx = scan.nextInt(); int starty = scan.nextInt(); k = scan.nextInt(); dx = new int[k]; dy = new int[k]; for(int i = 0; i < k; i++){ dx[i] = scan.nextInt(); dy[i] = scan.nextInt(); } craw[startx][starty] = true; for(int i = 0; i < k; i++){ bfs(startx + dx[i], starty + dy[i], 0); } int result = -1; for(int i = 0; i < n; i++){ if(dp[i][0] != Integer.MAX_VALUE) result = Math.max(result, dp[i][0]); } for(int i = 0; i < m; i++){ if(dp[0][i] != Integer.MAX_VALUE) result = Math.max(result, dp[0][i]); } for(int i = 0; i < n; i++){ for(int j = 0; j < m; j++) System.out.print(dp[i][j] + " "); System.out.println(); } if(flag){System.out.println(-1); }else{ System.out.println(result + 1); } } private static void bfs(int x, int y,int len) { // TODO Auto-generated method stub if(x < 0 || x >= n || y < 0 || y > m)return; if(mat[x][y] != '.' || craw[x][y])return; craw[x][y] = true; if((x == 0 || y == 0 || x == n-1 || y == m-1) && mat[x][y] == '.'){ flag = false; int value = dp[x][y]; if(len < value){ dp[x][y] = len; } } for(int i = 0; i < k; i++){ if(x + dx[i] < 0 || x + dx[i] >= n)continue; if(y + dy[i] < 0 || y + dy[i] >= m)continue; bfs(x + dx[i], y + dy[i], len+1); } craw[x][y] = false; } }
点赞
回复
分享
发布于 2016-08-02 22:15
Cyif
浙江大学 Java
就是bfs啊,然后找出步数最多的
点赞
回复
分享
发布于 2016-08-02 22:11
暂无评论,快来抢首评~
相关推荐
今天 13:26
门头沟学院 前端工程师
字节生活服务前端一面
全程2小时,拷打很深,自己准备不是很充分,面试体验还是不错的,给了很多对我简历和学习路线的建议,很受用-项目经历1、问了项目经历,一些指标和性能监控2、项目里websocket和轮询怎么使用的?3、项目里的性能优化怎么做的,lazy load和具体渲染时间等指标?-八股1、浏览器渲染流程?2、重排跟重绘的区别,哪个性能比较好?3、浏览器缓存?4、前端有哪些本地存储方式?5、跨域问题怎么解决的?6、CSS的模块化?怎么保证样式不冲突?7、组件间通信方式?8、Vue2和Vue3的区别?9、虚拟DOM对性能的影响?-手撕1、看一段赋值的代码输出2、hot100大数相加
点赞
评论
收藏
分享
12-16 14:18
浙江大学 Java
HTTP 常见状态码
图解HTTP-牛客面经八...
点赞
评论
收藏
分享
12-16 21:41
长沙理工大学 Java
28简历找寒假实习,求拷打
😅😅😅
不知道怎么取名字_:
28届都开始出来找机会了,看来哪里都卷
实习简历求拷打
点赞
评论
收藏
分享
12-19 20:08
学而思_HR(准入职员工)
学而思内推,学而思内推码
1️⃣ 请先做个简单的自我介绍? 😊 2️⃣ 能否谈下你应聘这个岗位的优势? 🌟 3️⃣ 你的职业规划是什么? 🎯 4️⃣ 为什么选择学而思作为你的求职目标? 🏢 5️⃣ 你对学而思的课程顾问岗位有哪些了解? 📋 6️⃣ 描述一次团队合作的经历,你在其中扮演了什么角色? 🤝 7️⃣ 遇到工作压力大时,你通常如何应对? 😊 8️⃣ 面对家长和学生的投诉,你会如何处理? 💬 9️⃣ 如何向一个对学而思课程持怀疑态度的家长介绍课程? 📚 🔟 请举例说明你如何通过有效沟通解决过一个问题。 💡 1️⃣1️⃣ 描述一次你认为成功的销售或推广经验。 🚀 1️⃣2️⃣ 你如何看待持续学...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
26届双非本鼠硕拿下5个ssp的秋招总结及一条龙经验分享
8488
2
...
【25年终总结】-牛客运营团队
5584
3
...
实习没事做是福还是祸?
3858
4
...
大二混子终于找到实习了...
3368
5
...
学校发力了,没招了牛友们
2233
6
...
关于我小心翼翼触碰安全红线这件事
2143
7
...
尼克狐尼克,你被捕了
2047
8
...
校招入职半年之后又回到了这个地方
2040
9
...
【求助】被hr骂“刷子”什么意思?
1992
10
...
快手昨晚是咋了,有无懂牛?
1768
创作者周榜
更多
正在热议
更多
#
2025年终总结
#
143393次浏览
2461人参与
#
秋招落幕,你是He or Be
#
2506次浏览
69人参与
#
应届生进小公司有什么影响吗
#
108849次浏览
1115人参与
#
比亚迪工作体验
#
69668次浏览
253人参与
#
工作中听到最受打击的一句话
#
2101次浏览
57人参与
#
你面试体验感最差/最好的公司
#
2315次浏览
52人参与
#
大厂VS公务员你怎么选
#
70576次浏览
654人参与
#
重来一次,你会对开始求职的自己说
#
2571次浏览
64人参与
#
一人说一个提前实习的好处
#
2830次浏览
56人参与
#
团建是“福利”还是是 “渡劫”
#
3690次浏览
98人参与
#
实习没事做是福还是祸?
#
7597次浏览
126人参与
#
从顶到拉给所有面过的公司评分
#
144731次浏览
518人参与
#
今年你最想重开的一场面试是?
#
1203次浏览
23人参与
#
你小心翼翼的闯过多大的祸?
#
6424次浏览
103人参与
#
联影求职进展汇总
#
123742次浏览
781人参与
#
如何排解工作中的焦虑
#
243134次浏览
2228人参与
#
OPPO求职进展汇总
#
755777次浏览
5390人参与
#
互联网公司爆料
#
158476次浏览
724人参与
#
公司情报交流地
#
127425次浏览
1233人参与
#
今年形式下双非本找得到工作吗
#
266368次浏览
1541人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务