From 194f380f11d5cf59773d5dd983bc36b555de3a70 Mon Sep 17 00:00:00 2001 From: Chithra582 Date: Wed, 7 Jan 2026 10:55:59 +0530 Subject: [PATCH] Added the solution for prefix-sum --- .../prefix_sum/soln/Chithra/Solution1.cpp | 47 ++++++++++++++++++ .../prefix_sum/soln/Chithra/Solution1.exe | Bin 0 -> 66119 bytes 2 files changed, 47 insertions(+) create mode 100644 algos/range_queries/prefix_sum/soln/Chithra/Solution1.cpp create mode 100644 algos/range_queries/prefix_sum/soln/Chithra/Solution1.exe diff --git a/algos/range_queries/prefix_sum/soln/Chithra/Solution1.cpp b/algos/range_queries/prefix_sum/soln/Chithra/Solution1.cpp new file mode 100644 index 0000000..035b83a --- /dev/null +++ b/algos/range_queries/prefix_sum/soln/Chithra/Solution1.cpp @@ -0,0 +1,47 @@ +/* +Problem Statement: +Given an array of integers, efficiently answer multiple range sum queries. +Each query asks for the sum of elements between indices L and R (inclusive). +Approach: +We use a Prefix Sum array to answer range sum queries in O(1) time: +1. Construct a prefix sum array `prefix` of size n: + - prefix[0] = arr[0] + - prefix[i] = prefix[i-1] + arr[i] for i = 1 to n-1 +2. For a query [L, R], the sum is: + - If L == 0: sum = prefix[R] + - Else: sum = prefix[R] - prefix[L-1] +Time Complexity: +- O(N) to build the prefix sum array +- O(1) per query +- Overall: O(N + Q), where Q = number of queries +Space Complexity: +- O(N) for the prefix sum array +Example: +Input: arr = [1,2,3,4,5], queries = [[1,3],[0,2]] +Output: [9,6] +Explanation: +- Query [1,3] sum = 2+3+4 = 9 +- Query [0,2] sum = 1+2+3 = 6 +*/ + +#include +using namespace std; +int main() { + int n = 5; + vector arr = {1, 2, 3, 4, 5}; + int queries[][2] = {{1, 3}, {0, 2}}; + int q = 2; + vector prefix(n); + prefix[0] = arr[0]; + for(int i = 1; i < n; i++) { + prefix[i] = prefix[i-1] + arr[i]; + } + for(int i = 0; i < q; i++) { + int L = queries[i][0]; + int R = queries[i][1]; + int sum = (L == 0) ? prefix[R] : prefix[R] - prefix[L-1]; + cout << sum << " "; + } + cout << endl; + return 0; +} diff --git a/algos/range_queries/prefix_sum/soln/Chithra/Solution1.exe b/algos/range_queries/prefix_sum/soln/Chithra/Solution1.exe new file mode 100644 index 0000000000000000000000000000000000000000..9a2df3821994f187ac93a8f02e7f465ffd781967 GIT binary patch literal 66119 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 bezM%*Zi;tr`%FFxWXiR0{l68+h{pX3i-9jH literal 0 HcmV?d00001