欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > Java LeetCode 练习

Java LeetCode 练习

2024/10/25 1:32:20 来源:https://blog.csdn.net/Aishangyuwen/article/details/141690104  浏览:    关键词:Java LeetCode 练习

       3142. 判断矩阵是否满足条件

需求:

        给你一个大小为 m x n 的二维矩阵 grid 。你需要判断每一个格子 grid[i][j] 是否满足:
        如果它下面的格子存在,那么它需要等于它下面的格子,也就是 grid[i][j] == grid[i + 1][j] 。
        如果它右边的格子存在,那么它需要不等于它右边的格子,也就是 grid[i][j] != grid[i][j + 1] 。
        如果 所有 格子都满足以上条件,那么返回 true ,否则返回 false 。

       

题解:

        根据题意直接模拟即可。(暴力)
        设矩阵 grid 的行数与列数分别为 m,n。我们遍历阵 grid,对于任意的位置判断 grid[i][j] 是否满足条件即可:
        如果满足 i+1<m,此时需要满足 grid[i][j]=grid[i+1][j],如果不满足则返回 false;
        如果满足 j+1<n,此时需要满足 grid[i][j] =grid[i][j+1],如果不满足则返回 false;
        遍历结束之后,如果没有遇到不满足条件的情况,则返回 true。

代码:

package JavaExercise20240829;import java.util.Scanner;public class LeetCodeExercise {public static void main(String[] args) {// 需求// 给你一个大小为m * n的二维矩阵grid 。你需要判断每一个格子grid[i][j]是否满足://如果它下面的格子存在,那么它需要等于它下面的格子,也就是grid[i][j] == grid[i + 1][j]。//如果它右边的格子存在,那么它需要不等于它右边的格子,也就是grid[i][j] != grid[i][j + 1]。//如果所有格子都满足以上条件,那么返回true ,否则返回false。Scanner sc = new Scanner(System.in);System.out.println("请输入二维数组的行数:");int m = sc.nextInt();System.out.println("请输入二维数组的列数:");int n =sc.nextInt();int[][] array = new int[m][n];for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {System.out.printf("请输入第%d行,第%d列个数字", i + 1, j + 1);array[i][j] = sc.nextInt();}}Solution solution = new Solution();System.out.println(solution.satisfiesConditions(array));}
}class Solution {public boolean satisfiesConditions(int[][] grid) {int outLength = grid.length;int inLength = grid[0].length;for (int i = 0; i < outLength; i++){for (int j = 0; j < inLength; j++) {if (i != outLength - 1  && grid[i][j] != grid[i + 1][j]) {return false;}if (j != inLength - 1 && grid[i][j] == grid[i][j + 1]) {return false;}}}return true;}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com