LeetCode 554 砖墙 题解
LeetCode 554 砖墙 题解
你的面前有一堵矩形的、由 n 行砖块组成的砖墙。这些砖块高度相同(也就是一个单位高)但是宽度不同。每一行砖块的宽度之和相等。
你现在要画一条 自顶向下 的、穿过 最少 砖块的垂线。如果你画的线只是从砖块的边缘经过,就不算穿过这块砖。你不能沿着墙的两个垂直边缘之一画线,这样显然是没有穿过一块砖的。
给你一个二维数组 wall ,该数组包含这堵墙的相关信息。其中,wall[i] 是一个代表从左至右每块砖的宽度的数组。你需要找出怎样画才能使这条线 穿过的砖块数量最少 ,并且返回 穿过的砖块数量 。
示例 1:输入:wall = [[1,2,2,1],[3,1,2],[1,3,2],[2,4],[3,1,2],[1,3,1,1]]
输出:2
示例 2:
输入:wall = [[1],[1],[1]]
输出:3
提示:
n == wall.length
1 <= n <= 104
1 <= wall[i].length <= 104
1 <= sum(wall[i].length) <= 2 * 104
对于每一行 i ,sum(wall[i]) 是相同的
1 <= wall[i][j] <= 231 - 1
参考题解
class Solution {public int leastBricks(List<List<Integer>> wall) {int n = wall.size();//行数Map<Integer, Integer> times = new HashMap<>();//间隙位置出现的次数,同一位置的间隙,每行只可能有一个for(int i = 0, sum = 0; i < n; i++){for(int num : wall.get(i)){sum += num;times.put(sum, times.getOrDefault(sum, 0) + 1);}times.remove(sum);//最后一个边缘不能算sum = 0;}int max = 0;for(int key : times.keySet()){max = Math.max(max, times.get(key));}return n - max;}
}
LeetCode 554 砖墙 题解相关推荐
- Leetcode 554. 砖墙 C++
Leetcode 554. 砖墙 题目 你的面前有一堵矩形的.由多行砖块组成的砖墙. 这些砖块高度相同但是宽度不同.你现在要画一条自顶向下的.穿过最少砖块的垂线. 砖墙由行的列表表示. 每一行都是一个 ...
- leetcode 554. 砖墙
你的面前有一堵矩形的.由 n 行砖块组成的砖墙.这些砖块高度相同(也就是一个单位高)但是宽度不同.每一行砖块的宽度之和应该相等. 你现在要画一条 自顶向下 的.穿过 最少 砖块的垂线.如果你画的线只是 ...
- LeetCode 554. 砖墙(map计数)
1. 题目 你的面前有一堵方形的.由多行砖块组成的砖墙. 这些砖块高度相同但是宽度不同.你现在要画一条自顶向下的.穿过最少砖块的垂线. 砖墙由行的列表表示. 每一行都是一个代表从左至右每块砖的宽度的整 ...
- Leetcode 554.砖墙
砖墙 你的面前有一堵方形的.由多行砖块组成的砖墙. 这些砖块高度相同但是宽度不同.你现在要画一条自顶向下的.穿过最少砖块的垂线. 砖墙由行的列表表示. 每一行都是一个代表从左至右每块砖的宽度的整数列表 ...
- LeetCode.554 砖墙
原题 https://leetcode-cn.com/problems/brick-wall/ 思路 哈希 题解 package cn.codemao.botmao.admin;import java ...
- [leetcode] 554. 砖墙
class Solution {public:int leastBricks(vector<vector<int>>& wall) {unordered_map< ...
- LeetCode:砖墙【554】
LeetCode:砖墙[554] 题目描述 你的面前有一堵方形的.由多行砖块组成的砖墙. 这些砖块高度相同但是宽度不同.你现在要画一条自顶向下的.穿过最少砖块的垂线. 砖墙由行的列表表示. 每一行都是 ...
- LeetCode每日抑题 554. 砖墙
554. 砖墙 难度:中等 语言:java 题目内容 你的面前有一堵矩形的.由 n 行砖块组成的砖墙.这些砖块高度相同(也就是一个单位高)但是宽度不同.每一行砖块的宽度之和应该相等. 你现在要画一条 ...
- LeetCode 0554. 砖墙
[LetMeFly]554.砖墙 力扣题目链接:https://leetcode.cn/problems/brick-wall/ 你的面前有一堵矩形的.由 n 行砖块组成的砖墙.这些砖块高度相同(也就 ...
最新文章
- JavaScript的基本使用
- [知识图谱实战篇] 一.数据抓取之Python3抓取JSON格式的电影实体
- 根据对象的属性去重,获取新数组
- Detected cartesian product for LEFT OUTER join
- nrm : 无法加载文件 E:\node\node_global\nrm.ps1,因为在此系统上禁止运行脚本
- 2019/01/29-Linux目录
- 深度学习图像分类(一):LeNet
- 重置Winsock失败,在NSHHTTP.DLL中初始化函数InitHelperDll启动失败,错误代码为10107的解决方法
- KL距离(衡量两个概率分布的差异情况)
- STM32F103无源蜂鸣器驱动程序
- YALMIP工具箱之解决半定规划问题的SDPT3求解器安装
- 机载激光雷达原理与应用科普(六)
- 内存模型与C++ 内存序
- [从零开始学FPGA编程-3]:快速入门篇 - 操作步骤1 - 导体、半导体、晶体管、常见电子元器件、集成电路
- Illustrator插件开发-AI插件-aip格式-第一章 第三小节 Plugin类-StartupPlugin函数
- 服务器 备案 文档,备案需要备案服务器
- 【​观察】中国民生银行与华为组成新CP 共同释放金融科技创新红利
- BPM 是与非 -- 什么是BPM,如何辨别是否BPM产品,以及如何选择BPM产品
- 开发数据可视化,有哪些数据可视化表现形式?
- 数学小魔术 —— 猜数字(二)(我回来了)
热门文章
- 项目范围定义与创建工作结构分解
- 【论文速递】ACL 2021-CLEVE: 事件抽取的对比预训练
- 人体温度低于36度正常吗_大人的体温低于36度,正常吗?
- 帆软填报报表实现日期自动生成总结
- spss分析方法-中介效应(转载)
- Spring Boot“内存泄漏”?看看大牛是如何排查的
- 吴军三部曲见识(四) 大家智慧
- 最新版小程序砍价商城源码前后端
- Android音视频API(android.media.midi):概览
- 专职开发人员的“诅咒”