Leetcode:3195

1,题目

2,思路

首先找到上下左右初始边就开始循环找到上下左右最终边,做面积运算就好了(其中+1是因为下标比实际位置少1)

3,代码

java 复制代码
class Solution3195 {
    public int minimumArea(int[][] grid) {
        int above = 0;//上
        int under = 0;//下
        int left = 0;//左
        int right = 0;//右
        boolean b = true;
        for (int i = 0; i < grid.length; i++) {
            if (b) {
                for (int j = 0; j < grid[i].length; j++) {
                    if (grid[i][j] == 1) {
                        above = i;
                        under = i;
                        left = j;
                        right = j;
                        b = false;
                        break;
                    }
                }
            } else break;
        }
        for (int i = 0; i < grid.length; i++) {
            for (int j = 0; j < grid[i].length; j++) {
                if (grid[i][j] == 1) {
                    if (left >= j) {//左
                        left = j;
                    }
                    if (right <= j) {//右
                        right = j;
                    }
                    if (above >= i) {//上
                        above = i;
                    }
                    if (under <= i) {//下
                        under = i;
                    }
                }
            }
        }
        return (right - left + 1) * (under - above + 1);
    }
}
相关推荐
列星随旋18 分钟前
线段树和树状数组的学习
学习·算法
圣保罗的大教堂35 分钟前
leetcode 61. 旋转链表 中等
leetcode
500841 小时前
昇腾 CANN 的五层架构,到底分了哪五层
java·人工智能·分布式·架构·ocr·wpf
摇滚侠1 小时前
Java 零基础全套教程,File 类与 IO 流,笔记 177-178
java·开发语言·笔记
全糖可乐气泡水2 小时前
Codex适配国产信创环境安装部署与技术适配全解析
开发语言·git·python·算法·百度
雨落在了我的手上2 小时前
初始java(十):类和对象(⼆)
java·开发语言
h_a_o777oah2 小时前
状态机+划分型 DP :深度解析K-划分问题下 DP 状态的转移逻辑(洛谷P2679 P2331 附C++代码)
c++·算法·动态规划·acm·状态机dp·划分型dp·滚动数组优化
05候补工程师2 小时前
从算法理想向工程现实的跨越:SLAM 核心架构、思维误区与 Nav2 实战避坑指南
人工智能·算法·安全·架构·机器人
莫雪歌3 小时前
Java AI 应用开发实践:基于 Spring Boot 实现 Chat、Memory、RAG 与 Tool Calling
java·aigc
SmartBrain3 小时前
AI全栈开发(SDD):慢病管理系统工程级设计
java·大数据·开发语言·人工智能·架构·aigc