From 4dec1f87749928ba27a612cb57c0496e8a7e848d Mon Sep 17 00:00:00 2001 From: Cool <747682928@qq.com> Date: Fri, 1 Nov 2024 23:35:39 +0800 Subject: [PATCH] =?UTF-8?q?2024/11/1=20=E7=81=B5=E8=8C=B6=E9=A2=98?= =?UTF-8?q?=E5=8D=95=20=E6=BB=91=E5=8A=A8=E7=AA=97=E5=8F=A3=20=E6=81=B0?= =?UTF-8?q?=E5=A5=BD=E5=9E=8B=E6=BB=91=E5=8A=A8=E7=AA=97=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sliding_windows/Num930.java | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/main/java/com/cool/ling_cha_mount/sliding_windows/Num930.java diff --git a/src/main/java/com/cool/ling_cha_mount/sliding_windows/Num930.java b/src/main/java/com/cool/ling_cha_mount/sliding_windows/Num930.java new file mode 100644 index 0000000..9a6bf56 --- /dev/null +++ b/src/main/java/com/cool/ling_cha_mount/sliding_windows/Num930.java @@ -0,0 +1,30 @@ +package com.cool.ling_cha_mount.sliding_windows; + +/** + * Created with IntelliJ IDEA. + * + * @Author: Cool + * @Date: 2024/11/01/23:33 + * @Description: 930. 和相同的二元子数组 + */ +public class Num930 { + public int numSubarraysWithSum(int[] nums, int goal) { + int res = 0; + int left1 = 0; + int left2 = 0; + int sum1 = 0; + int sum2 = 0; + for (int i = 0; i < nums.length; i++) { + sum1 += nums[i]; + sum2 += nums[i]; + while (left1 <= i && sum1 > goal) { + sum1 -= nums[left1++]; + } + while (left2 <= i && sum2 >= goal) { + sum2 -= nums[left2++]; + } + res += left2 - left1; + } + return res; + } +}