TomoLink
CompaniesZeptoData Structures & AlgorithmsRange Sum Query - Mutable
DSA
MediumArray

Range Sum Query - Mutable

arraydivide and conquerdesign

Problem Statement

Given an integer array nums , handle multiple queries of the following types:

Update the value of an element in nums .

Calculate the sum of the elements of nums between indices left and right inclusive where left <= right .

Implement the NumArray class:

NumArray(int[] nums) Initializes the object with the integer array nums .

void update(int index, int val) Updates the value of nums[index] to be val .

int sumRange(int left, int right) Returns the sum of the elements of nums between indices left and right inclusive (i.e. nums[left] + nums[left + 1] + ... + nums[right] ).

Examples

Example 1
Input:
Output:

Constraints

1 <= nums.length <= 3 * 10 ^4
-100 <= nums[i] <= 100
0 <= index < nums.length
-100 <= val <= 100
0 <= left <= right < nums.length
At most 3 * 10 ^4 calls will be made to update and sumRange .
🤔
Medium
Difficulty
Topic Info
ModuleDSA
CategoryArray
Sub-topicDivide and Conquer
Tags
arraydivide and conquerdesignbinary indexed treesegment tree
Navigation
Range Sum Query - Mutable [Medium] | Zepto Dsa | TomoLink