啊。滴滴本地通过最后时刻在线不通过。

颜后最后一题没做。啊,牛客网环境比其他的强。
import java.util.*;
public class Main { public static void main(String[] args) {
        Main main = new Main();
        Scanner sc = new Scanner(System.in); while(sc.hasNext()){
            Stack<Integer> stack = new Stack<Integer>(); int n = sc.nextInt(); int m = sc.nextInt(); int p = sc.nextInt(); int[][] target = new int[n][m]; int[][] result = new int[n][m]; for(int i=0;i<n;i++){ for(int j=0;j<m;j++){
                    target[i][j] = sc.nextInt();
                }
            }
            result[0][0] =p;
            stack.push(0);
            stack.push(0); int i=0; int j =0; while(i<n-1&&j<m-1) { //水平第一行  if (i==0) { if (target[i][j + 1] != 0) {
                        result[i][j + 1] = result[i][j] - 1;
                        stack.push(i);
                        stack.push(++j); if(result[i][j]<0){
                            System.out.println("Can not escape!");
                        } continue;
                    } else if (target[i + 1][j] != 0) {
                        result[i + 1][j] = result[i][j];
                        stack.push(++i);
                        stack.push(j); if(result[i][j]<0){
                            System.out.println("Can not escape!");
                        } continue;
                    }else {
                        j=stack.pop();
                        i=stack.pop(); continue;
                    }
                } //除掉水平垂直  if(i!=0&&j!=0){ //向右  if (target[i][j + 1] != 0) {
                        result[i][j + 1] = result[i][j] - 1;
                        stack.push(i);
                        stack.push(++j); if(result[i][j]<0){
                            System.out.println("Can not escape!");
                        } continue;
                    } //向上  if (target[i-1][j]!=0){
                        result[i-1][j] = result[i][j]-3;
                        stack.push(--i);
                        stack.push(j); if(result[i][j]<0){
                            System.out.println("Can not escape!");
                        } continue;
                    } //向下  if (target[i + 1][j] != 0) {
                        result[i + 1][j] = result[i][j];
                        stack.push(++i);
                        stack.push(j); if(result[i][j]<0){
                            System.out.println("Can not escape!");
                        } continue;
                    } //向左  if (result[i][j-1]==0&&target[i][j-1]!=0){
                        result[i][j-1]=result[i][j]-1;
                        stack.push(i);
                        stack.push(--j); if(result[i][j]<0){
                            System.out.println("Can not escape!");
                        } continue;
                    } //弹出  else {
                        j=stack.pop();
                        i=stack.pop(); continue;
                    }
                } if(i!=0&&j==0){ //向右  if (target[i][j + 1] != 0) {
                        result[i][j + 1] = result[i][j] - 1;
                        stack.push(i);
                        stack.push(++j); if(result[i][j]<0){
                            System.out.println("Can not escape!");
                        } continue;
                    } //向下  if (target[i + 1][j] != 0) {
                        result[i + 1][j] = result[i][j];
                        stack.push(++i);
                        stack.push(j); if(result[i][j]<0){
                            System.out.println("Can not escape!");
                        } continue;
                    } //弹出  else {
                        j=stack.pop();
                        i=stack.pop(); continue;
                    }
                }
            } if(j==m-1){ //shang  for(int k=j;k>0;k--){ if(target[i][k]==0){
                        System.out.println("Can not escape!");
                    }else {
                        result[i-1][j] = result[i][j]-3;
                        stack.push(--i);
                        stack.push(j); if(result[i][j]<0){
                            System.out.println("Can not escape!");
                        } continue;
                    }
                }
            }
            Stack<Integer> stack1 = new Stack<Integer>(); while (!stack.isEmpty()){
                stack1.push(stack.pop());
            } while (!stack1.isEmpty()){
                System.out.print("[");
                System.out.print(stack1.pop());
                System.out.print(",");
                System.out.print(stack1.pop());
                System.out.print("]"); if(!stack1.isEmpty())
                System.out.print(",");
            }
            System.out.println();
        }
    }
}
纪念一下#滴滴#
全部评论
我做对了,多输出一行
点赞 回复 分享
发布于 2016-09-18 17:10
再给我一分钟我就ac了啊!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
点赞 回复 分享
发布于 2016-09-18 17:22
我觉得是我的代码can not escape没有输对,我也是最后几分钟提交
点赞 回复 分享
发布于 2016-09-18 17:44

相关推荐

工作基本定了,比较满意。这深度学习真是难搞啊,论文看不懂,代码看不懂,不会改,创新点???&nbsp;还有一个月中期,怎么搞,已经抑郁了,没有小论文要求,我真是非常幸运了,不然就我这科研能力…………&nbsp;感觉自己对自己失去信心,无时无刻不在否定自己取得一些成绩都是运气好罢了,真的能顺利毕业吗?严重内耗、无力感爆棚啊…………
AI牛可乐:哎呀,听起来你最近压力好大呀,毕业论文和工作的双重压力一定让你感觉像是背了两座山呢。深度学习确实挺复杂的,就像是要在一片迷雾中找到出路一样。但是,你已经很棒了,工作都定好了,这是很大的成就呢! 论文的事情,别太担心。每个人都有看不懂代码和论文的时候,这是正常的。至于创新点嘛,有时候灵感就像小猫一样,需要一点一点地哄出来的。你可以先试试把你看过的资料整理一下,说不定就能找到新的思路呢。 中期答辩前,你可以列个计划,一步一步来,把大问题分解成小问题,一点一点克服。记得,你不是一个人在战斗,你的导师、同学都是你的战友哦。 至于信心嘛,别否定自己,每个人都会有低谷的时候。你已经取得的成绩,都是你实力的体现。毕业不是问题,只要你不放弃,就一定能顺利走过去的。加油哦,我相信你可以的! 对了,如果你愿意的话,可以点击我的头像,我们私信聊,也许我能帮你出出主意,或者就是简单地聊聊天,分散一下你的注意力也好呀。🐮💪🌟
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务