关注
思路差不多,我的AC了
import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
public class Main {
/*请完成下面这个函数,实现题目要求的功能
当然,你也可以不按照下面这个模板来作答,完全按照自己的想法来 ^-^
******************************开始写代码******************************/
static int longpath(int[][] matrix) {
int rows = matrix.length;
int cols = matrix[0].length;
int path = Integer.MIN_VALUE;
for(int i=0;i<rows;i++) {
for(int j=0;j<cols;j++) {
boolean[][] visited = new boolean[rows][cols];
int res = helper(matrix, rows, cols, i, j, visited);
System.out.println(res);
path = Math.max(path, res);
}
}
return path;
}
/******************************结束写代码******************************/
public static int helper(int[][] matrix, int rows, int cols, int x, int y, boolean[][] visited) {
if(x<0 || x>=rows || y<0 || y>=cols || visited[x][y])
return 0;
visited[x][y] = true;
int res1 = 1;
int res2 = 1;
int res3=1;
int res4=1;
if(x+1<rows && matrix[x+1][y] > matrix[x][y])
res1+=helper(matrix,rows,cols,x+1,y,visited);
if(x-1>=0 && matrix[x-1][y] > matrix[x][y])
res2+=helper(matrix,rows,cols,x-1,y,visited);
if(y+1<cols && matrix[x][y+1] > matrix[x][y])
res3+=helper(matrix,rows,cols,x,y+1,visited);
if(y-1>=0 && matrix[x][y-1] > matrix[x][y])
res4+=helper(matrix,rows,cols,x,y-1,visited);
visited[x][y] = false;
return Math.max(Math.max(res1, res2), Math.max(res3, res4));
}
public static void main(String[] args){
Scanner in = new Scanner(System.in);
int res;
int _matrix_rows = 0;
int _matrix_cols = 0;
_matrix_rows = Integer.parseInt(in.nextLine().trim());
_matrix_cols = Integer.parseInt(in.nextLine().trim());
int[][] _matrix = new int[_matrix_rows][_matrix_cols];
for(int _matrix_i=0; _matrix_i<_matrix_rows; _matrix_i++) {
for(int _matrix_j=0; _matrix_j<_matrix_cols; _matrix_j++) {
_matrix[_matrix_i][_matrix_j] = in.nextInt();
}
}
if(in.hasNextLine()) {
in.nextLine();
}
res = longpath(_matrix);
System.out.println(String.valueOf(res));
}
}
查看原帖
点赞 1
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
5304次浏览 71人参与
# 机械人避雷的岗位/公司 #
40891次浏览 267人参与
# 程序员找工作至少要刷多少题? #
9919次浏览 147人参与
# 刚入职的你踩过哪些坑 #
4402次浏览 92人参与
# 论秋招对个人心气的改变 #
6150次浏览 106人参与
# 为了减少AI幻觉,你注入过哪些设定? #
1973次浏览 56人参与
# 牛客AI体验站 #
3548次浏览 94人参与
# 一张图晒一下你的AI员工 #
3095次浏览 63人参与
# 程序员能干到多少岁? #
5922次浏览 90人参与
# 我现在比当时_,你想录用我吗 #
3820次浏览 67人参与
# 关于春招/暑期实习,你想知道哪些信息? #
4303次浏览 84人参与
# AI Coding的使用心得 #
2518次浏览 61人参与
# 找工作的破防时刻 #
252129次浏览 1958人参与
# 晒晒你司的新年福利 #
4232次浏览 71人参与
# 实习,不懂就问 #
165728次浏览 1476人参与
# 软开人,秋招你打算投哪些公司呢 #
180839次浏览 1397人参与
# 帆软软件工作体验 #
12847次浏览 70人参与
# 你投了多少份简历了? #
423095次浏览 3965人参与
# 黄金这个事上,你学到了什么 #
857次浏览 26人参与
# 暑假倒计时,你都干了些啥? #
40885次浏览 216人参与
网易公司福利 446人发布