#include <iostream>
void PrintSubarrayWithSumEqualToN(int arr[], int size, int N) {
for (int i = 0; i < size; i++) {
int current_sum = arr[i];
if (current_sum == N) {
std::cout << "Sum found at index: " << i;
return;
}
else {
for (int j = i + 1; j < size; j++) {
current_sum += arr[j];
if (current_sum == N) {
std::cout << "Sum found between index " << i << " and " << j << "\n";
for (int k = i; k <= j; k++)
std::cout << arr[k] << " ";
return;
}
else if (current_sum > N) break;
}
}
}
std::cout << "No subarray found";
}
int main() {
int arr[] = {2, 5, 8, 9, 1, 7, 12, 21, 19};
int size = sizeof(arr) / sizeof(arr[0]);
int N = 52;
PrintSubarrayWithSumEqualToN(arr, size, N);
}
/*
run:
Sum found between index 6 and 8
12 21 19
*/