From a1390fa1ab8ba4600037b6518443135b84fca776 Mon Sep 17 00:00:00 2001 From: Chithra582 Date: Wed, 7 Jan 2026 10:44:08 +0530 Subject: [PATCH] Add Solution1.cpp for Range Queries Difference Array --- .../soln/Chithra/Solution1.cpp | 68 ++++++++++++++++++ .../soln/Chithra/Solution1.exe | Bin 0 -> 69020 bytes 2 files changed, 68 insertions(+) create mode 100644 algos/range_queries/DifferenceArray/soln/Chithra/Solution1.cpp create mode 100644 algos/range_queries/DifferenceArray/soln/Chithra/Solution1.exe diff --git a/algos/range_queries/DifferenceArray/soln/Chithra/Solution1.cpp b/algos/range_queries/DifferenceArray/soln/Chithra/Solution1.cpp new file mode 100644 index 0000000..05f5a0e --- /dev/null +++ b/algos/range_queries/DifferenceArray/soln/Chithra/Solution1.cpp @@ -0,0 +1,68 @@ +/* +Problem Statement: +------------------ +Given an array of integers, perform multiple range update queries. +Each query is of the form [L, R, X] where you need to add X to all elements from index L to R (inclusive). +Return the final updated array. + +Approach: +--------- +We use a Difference Array to perform range updates efficiently in O(1) time per query. + +Steps: +1. Create a difference array `diff` of size n+1. +2. For each query [L, R, X]: + - diff[L] += X + - diff[R+1] -= X +3. Construct the final array by taking the prefix sum of `diff` and adding it to the original array. + +Time Complexity: +---------------- +- O(N + Q), where N = size of the array, Q = number of queries + +Space Complexity: +----------------- +- O(N) for the difference array + +Example I/O: +------------ +Input: arr = [1,2,3,4,5], queries = [[1,3,2],[0,2,1]] +Output: [2,5,6,6,5] +Explanation: +- First query adds 2 to indices 1 to 3 => [1,4,5,6,5] +- Second query adds 1 to indices 0 to 2 => [2,5,6,6,5] +*/ + +#include +using namespace std; + +int main() { + int n = 5; + vector arr = {1, 2, 3, 4, 5}; + int queries[][3] = {{1, 3, 2}, {0, 2, 1}}; + int q = 2; + + vector diff(n + 1, 0); + + // Apply each query using difference array + for(int i = 0; i < q; i++) { + int l = queries[i][0]; + int r = queries[i][1]; + int val = queries[i][2]; + diff[l] += val; + if(r + 1 < n) diff[r + 1] -= val; + } + + // Build the final array using prefix sum + arr[0] += diff[0]; + for(int i = 1; i < n; i++) { + diff[i] += diff[i-1]; + arr[i] += diff[i]; + } + + // Print result + for(int x : arr) cout << x << " "; + cout << endl; + + return 0; +} diff --git a/algos/range_queries/DifferenceArray/soln/Chithra/Solution1.exe b/algos/range_queries/DifferenceArray/soln/Chithra/Solution1.exe new file mode 100644 index 0000000000000000000000000000000000000000..8da4af5a5dd9ec12da0e3e2cd9ed316489a8d00e GIT binary patch literal 69020 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 Q6&X{_e%+*DNRPz*2iXx0oB#j- literal 0 HcmV?d00001