From f9749da0e45e9563e90615fb47d07beb931e4b34 Mon Sep 17 00:00:00 2001 From: kkunkka Date: Mon, 31 Mar 2025 11:31:59 +0800 Subject: [PATCH] kk --- pom.xml | 7 +++++ src/main/java/com/dota/Solution.java | 10 +++++++ .../dota/slidingWindow/_2653/Solution.java | 30 +++++++++++++++++++ .../java/com/dota/str/_2109/Solution.java | 18 +++++++++++ 4 files changed, 65 insertions(+) create mode 100644 src/main/java/com/dota/slidingWindow/_2653/Solution.java create mode 100644 src/main/java/com/dota/str/_2109/Solution.java diff --git a/pom.xml b/pom.xml index 555273c..50302a9 100644 --- a/pom.xml +++ b/pom.xml @@ -13,5 +13,12 @@ 17 UTF-8 + + + org.apache.commons + commons-collections4 + 4.4 + + \ No newline at end of file diff --git a/src/main/java/com/dota/Solution.java b/src/main/java/com/dota/Solution.java index e13d70e..6be93ea 100644 --- a/src/main/java/com/dota/Solution.java +++ b/src/main/java/com/dota/Solution.java @@ -1,8 +1,18 @@ package com.dota; +import org.apache.commons.collections4.list.TreeList; + import java.util.HashMap; public class Solution { + public static void main(String[] args) { + var a = new TreeList(); + a.add(1); + a.add(2); + a.add(1); + System.out.println(a.get(2)); + Integer.bitCount(1231); + } // 1423. 可获得的最大点数 public int maxScore(int[] cardPoints, int k) { int max; diff --git a/src/main/java/com/dota/slidingWindow/_2653/Solution.java b/src/main/java/com/dota/slidingWindow/_2653/Solution.java new file mode 100644 index 0000000..380be31 --- /dev/null +++ b/src/main/java/com/dota/slidingWindow/_2653/Solution.java @@ -0,0 +1,30 @@ +package com.dota.slidingWindow._2653; + +class Solution { + public int[] getSubarrayBeauty(int[] nums, int k, int x) { + int n = nums.length; + int[] res = new int[n - k + 1]; + int[] dp = new int[101]; + for (int i = 0; i < k - 1; i++) { + dp[nums[i] + 50]++; + } + + for (int i = k - 1; i < n; i++) { + dp[nums[i] + 50]++; + int left = x; + for (int j = 0; j < 101; j++) { + left -= dp[j]; + if (left <= 0) { + res[i - k + 1] = j - 50; + if (res[i-k+1] > 0) { + res[i-k+1] = 0; + } + break; + } + } + dp[nums[i - k + 1] + 50]--; + } + + return res; + } +} \ No newline at end of file diff --git a/src/main/java/com/dota/str/_2109/Solution.java b/src/main/java/com/dota/str/_2109/Solution.java new file mode 100644 index 0000000..3b8bc08 --- /dev/null +++ b/src/main/java/com/dota/str/_2109/Solution.java @@ -0,0 +1,18 @@ +package com.dota.str._2109; + +class Solution { + public String addSpaces(String s, int[] spaces) { + var sb = new StringBuilder(); + int idx = 0; + int i = 0; + for (char c : s.toCharArray()) { + if (idx