## Description

https://leetcode.com/problems/minimum-size-subarray-sum/

Given an array of positive integers `nums`

and a positive integer `target`

, return the minimal length of a **contiguous subarray** `[nums`

of which the sum is greater than or equal to _{l}, nums_{l+1}, ..., nums_{r-1}, nums_{r}]`target`

. If there is no such subarray, return `0`

instead.

**Example 1:**

Input:target = 7, nums = [2,3,1,2,4,3]Output:2Explanation:The subarray [4,3] has the minimal length under the problem constraint.

**Example 2:**

Input:target = 4, nums = [1,4,4]Output:1

**Example 3:**

Input:target = 11, nums = [1,1,1,1,1,1,1,1]Output:0

**Constraints:**

`1 <= target <= 10`

^{9}`1 <= nums.length <= 10`

^{5}`1 <= nums[i] <= 10`

^{5}

**Follow up:** If you have figured out the `O(n)`

solution, try coding another solution of which the time complexity is `O(n log(n))`

.

## Explanation

Have two pointers, one fast, one slow to move to the right. Keep moving the faster pointer to the right as long as the sum is less than the target. Subtract the slower pointer pointing number when every time moving the slower pointer.

## Python Solution

```
class Solution:
def minSubArrayLen(self, target: int, nums: List[int]) -> int:
j = 0
current_sum = 0
min_length = float(inf)
for i in range(len(nums)):
while current_sum < target and j < len(nums):
current_sum += nums[j]
j += 1
if current_sum >= target:
min_length = min(min_length, j - i)
current_sum -= nums[i]
if min_length == float(inf):
return 0
return min_length
```

- Time Complexity: O(N).
- Space Complexity: O(1).

If you have a file with sensitive information, it may not be enough to simply delete it with the rm command or press the Delete key. Deleting a filread more , with screen shot and code snipets at

How to Securely Delete Files Using Shred Command in Debian 11