diff options
author | Jack Sangdahl <[email protected]> | 2025-04-26 19:27:09 -0600 |
---|---|---|
committer | Jack Sangdahl <[email protected]> | 2025-04-26 19:27:09 -0600 |
commit | 5a210dfaefaa53cfa6f3152c23d992c93e83c4cf (patch) | |
tree | 3e9a9a223f9097060fac14ba160b945367dbfbb1 /count_subarr_len_three_cond.c | |
parent | e005e72b441ae5d8f214adaace18a2312f8be2cf (diff) | |
download | leetcode-5a210dfaefaa53cfa6f3152c23d992c93e83c4cf.tar.gz leetcode-5a210dfaefaa53cfa6f3152c23d992c93e83c4cf.zip |
3392. count subarrays of length three with a condition
Diffstat (limited to 'count_subarr_len_three_cond.c')
-rw-r--r-- | count_subarr_len_three_cond.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/count_subarr_len_three_cond.c b/count_subarr_len_three_cond.c new file mode 100644 index 0000000..3d61dd8 --- /dev/null +++ b/count_subarr_len_three_cond.c @@ -0,0 +1,22 @@ +// 3392. Count Subarrays of Length Three With a Condition +#include "leetcode.h" + +/* + * given an integer array 'nums', return the number of subarrays of length 3 + * such that the sum of the first and third number equals exactly half of the + * second number. + */ + +int countSubarrays(int *nums, int numsSize) { + int cnt = 0; + for (int i = 1; i < numsSize - 1; ++i) + if (2 * (nums[i - 1] + nums[i + 1]) == nums[i]) + cnt++; + return cnt; +} + +int main() { + int n1[] = {1, 2, 1, 4, 1}, n2[] = {1, 1, 1}; + printf("%d\n", countSubarrays(n1, ARRAY_SIZE(n1))); // expect: 1 + printf("%d\n", countSubarrays(n2, ARRAY_SIZE(n2))); // expect: 0 +} |