diff --git a/csharp/0523-continuous-subarray-sum.cs b/csharp/0523-continuous-subarray-sum.cs new file mode 100644 index 000000000..1f7453063 --- /dev/null +++ b/csharp/0523-continuous-subarray-sum.cs @@ -0,0 +1,19 @@ +public class Solution +{ + public bool CheckSubarraySum(int[] nums, int k) + { + var remainder = new Dictionary(); + remainder.Add(0, -1); + var total = 0; + for (var i = 0; i < nums.Length; i++) + { + total += nums[i]; + var r = total % k; + if (!remainder.ContainsKey(r)) + remainder.Add(r, i); + else if (i - remainder[r] > 1) + return true; + } + return false; + } +} \ No newline at end of file