+
+
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
index 787303a..1db5c79 100644
--- a/.idea/inspectionProfiles/Project_Default.xml
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -2,6 +2,8 @@
+
+
diff --git a/src/main/java/cn/hy/leetcode/Solution.java b/src/main/java/cn/hy/leetcode/Solution.java
index d8e3f19..4c3a064 100644
--- a/src/main/java/cn/hy/leetcode/Solution.java
+++ b/src/main/java/cn/hy/leetcode/Solution.java
@@ -132,15 +132,68 @@ public class Solution {
* @return 匹配结果
*/
public String shortestCompletingWord(String licensePlate, String[] words) {
- List template = Arrays.asList(licensePlate.toLowerCase().replaceAll("[^a-z]", "").split(""));
+ LinkedList template = new LinkedList<>(Arrays.asList(licensePlate.toLowerCase().replaceAll("[^a-z]", "").split("")));
List collect = Arrays.stream(words).map(
word -> {
- Arrays.stream(word.split("")).filter(letter -> template.contains(letter)).collect(Collectors.toList());
+ if (Arrays.stream(word.split("")).filter(letter -> template.remove(letter)).collect(Collectors.toList()).size() < template.size()) {
+ return "";
+ }
return word;
}
).collect(Collectors.toList());
- return collect.stream().sorted(Comparator.comparingInt(String::length)).findFirst().get();
+ return collect.stream().min(Comparator.comparingInt(String::length)).orElse("");
+ }
+
+ /**
+ * 807. 保持城市天际线
+ * 给你一座由 n x n 个街区组成的城市,每个街区都包含一座立方体建筑。给你一个下标从 0 开始的 n x n 整数矩阵 grid ,其中 grid[r][c] 表示坐落于 r 行 c 列的建筑物的 高度 。
+ * 城市的 天际线 是从远处观察城市时,所有建筑物形成的外部轮廓。从东、南、西、北四个主要方向观测到的 天际线 可能不同。
+ * 我们被允许为 任意数量的建筑物 的高度增加 任意增量(不同建筑物的增量可能不同) 。 高度为 0 的建筑物的高度也可以增加。然而,增加的建筑物高度 不能影响 从任何主要方向观察城市得到的 天际线 。
+ * 在 不改变 从任何主要方向观测到的城市 天际线 的前提下,返回建筑物可以增加的 最大高度增量总和 。
+ * @param grid 城市建筑矩阵
+ * @return 最高增量总和
+ */
+ public int maxIncreaseKeepingSkyline(int[][] grid) {
+ int[] colMax = new int[grid.length];
+ int[] rowMax = new int[grid.length];
+ int totalAdd = 0;
+
+ long startTime = System.currentTimeMillis();
+ // 先寻找行列的最大值
+ for (int outIndex=0; outIndex
Date: Thu, 23 Dec 2021 18:31:37 +0800
Subject: [PATCH 2/2] =?UTF-8?q?=E7=AC=AC2=E9=A2=98=20=E6=B2=A1=E5=86=99?=
=?UTF-8?q?=E5=AE=8C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.idea/runConfigurations.xml | 10 ++++
src/main/java/cn/hy/entity/ListNode.java | 19 +++++++
src/main/java/cn/hy/leetcode/Solution.java | 53 +++++++++++++++++++
src/main/java/cn/hy/test/SolutionTest.java | 19 +++++++
.../java/cn/hy/util/ListNodeConstructor.java | 31 +++++++++++
5 files changed, 132 insertions(+)
create mode 100644 .idea/runConfigurations.xml
create mode 100644 src/main/java/cn/hy/entity/ListNode.java
create mode 100644 src/main/java/cn/hy/util/ListNodeConstructor.java
diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml
new file mode 100644
index 0000000..797acea
--- /dev/null
+++ b/.idea/runConfigurations.xml
@@ -0,0 +1,10 @@
+
+
+
+