# Examine if each Subarray of even size has sum 0

0
7

Given an array A[ ] of dimension N, the duty is to examine if the sum of each even-sized subarray is 0 or not.

Examples:

Enter: N = 4, A[] = {8, -8, 7, 9}
Output: NO
Clarification: Sum of subarray {7, 9} isn’t 0.

Enter: N = 2, A[] = {0, 0}
Output: YES
Clarification: The one potential even size subarray is {0, 0} and its sum is 0.

Naive Strategy: The essential option to remedy the issue is as follows:

Generate all potential even size subarrays and examine if sum is 0 or not and return “YES” or “NO” accordingly.

Time Complexity: O(N2)
Auxiliary House: O(1)

Environment friendly Strategy: To resolve the issue observe the under concept:

The concept is to examine the whole array as soon as for all potential subarrays of size 2 as a result of all different evn sized subarrays of size better than 2 might be made by combining subarrays of size 2. So if all subarrays of size 2 have sum 0, all different even sized subarrays may even have sum 0.

Observe the steps talked about under to implement the thought:

• Begin iterating from i = 1 to N-1:
• Examine if the sum of A[i] and A[i-1] is 0 or not.
• If it’s not 0, return the reply as “NO” and no have to calculate additional.
• If the iteration is over and the situation is happy for all of the subarrays, return “YES” because the required reply.

Beneath is the implementation of the above method.

## C++

 ` `  `#embody ` `utilizing` `namespace` `std;` ` `  `string remedy(``int` `N, ``int` `A[])` `{` `    ``int` `ans = 1;` ` `  `    ` `    ` `    ``for` `(``int` `i = 1; i < N; i++) {` `        ``if` `(A[i] + A[i - 1] != 0) {` `            ``ans = 0;` `            ``break``;` `        ``}` `    ``}` `    ``if` `(ans)` `        ``return` `"YES"``;` `    ``return` `"NO"``;` `}` ` `  `int` `major()` `{` `    ``int` `A[] = { 8, -8, 7, 9 };` `    ``int` `N = ``sizeof``(A) / ``sizeof``(A[0]);` ` `  `    ` `    ``cout << remedy(N, A);` `    ``return` `0;` `}`

Time Complexity: O(N)
Auxiliary House: O(1)