From e8d15a5bfaa3a7ed253b8e785b0caec5d6701944 Mon Sep 17 00:00:00 2001 From: Matej Focko Date: Sun, 18 Aug 2024 19:54:44 +0200 Subject: [PATCH] =?UTF-8?q?cs:=20add=20=C2=AB1493.=20Longest=20Subarray=20?= =?UTF-8?q?of=201's=20After=20Deleting=20One=20Element=C2=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Matej Focko --- ...barray-of-1s-after-deleting-one-element.cs | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 cs/longest-subarray-of-1s-after-deleting-one-element.cs diff --git a/cs/longest-subarray-of-1s-after-deleting-one-element.cs b/cs/longest-subarray-of-1s-after-deleting-one-element.cs new file mode 100644 index 0000000..d36e1c9 --- /dev/null +++ b/cs/longest-subarray-of-1s-after-deleting-one-element.cs @@ -0,0 +1,20 @@ +public class Solution { + public int BitToInt(int num) => num == 0 ? 1 : 0; + + public int LongestSubarray(int[] nums) { + var longest = 0; + + var zeros = 0; + for (int l = 0, r = 0; r < nums.Length; ++r) { + zeros += BitToInt(nums[r]); + + for (; zeros > 1; ++l) { + zeros -= BitToInt(nums[l]); + } + + longest = Math.Max(longest, r - l); + } + + return longest; + } +}