# Number of Sublists With Sum of Target - Amazon Top Interview Questions

### Problem Statement :

```Given a list of integers nums and an integer target, return the number of sublists whose sum is equal to target.

Constraints

n ≤ 100,000 where n is the length of nums

Example 1

Input

nums = [2, 0, 2]
target = 2

Output

4

Explanation

We have these sublists whose sum is 2: , [2, 0], [0, 2], ```

### Solution :

```                        ```Solution in C++ :

int solve(vector<int>& nums, int k) {
int count = 0, sum = 0;
unordered_map<int, int> mp;
for (int i = 0; i < nums.size(); i++) {
sum += nums[i];
if (sum == k) count++;
count += mp[sum - k];
mp[sum]++;
}
return count;
}```
```

```                        ```Solution in Python :

class Solution:
def solve(self, nums, target):
prefix_table = {0: 1}
prefix_sum = 0
count = 0

for n in nums:
prefix_sum += n
# Is there a prefix we can remove in the subarray window that will add to the target?
# if so - add the total
if prefix_sum - target in prefix_table:
count += prefix_table[prefix_sum - target]
prefix_table[prefix_sum] = (
prefix_table[prefix_sum] + 1 if prefix_sum in prefix_table else 1
)
return count```
```

## Insert a node at a specific position in a linked list

Given the pointer to the head node of a linked list and an integer to insert at a certain position, create a new node with the given integer as its data attribute, insert this node at the desired position and return the head node. A position of 0 indicates head, a position of 1 indicates one node away from the head and so on. The head pointer given may be null meaning that the initial list is e

## Delete a Node

Delete the node at a given position in a linked list and return a reference to the head node. The head is at position 0. The list may be empty after you delete the node. In that case, return a null value. Example: list=0->1->2->3 position=2 After removing the node at position 2, list'= 0->1->-3. Function Description: Complete the deleteNode function in the editor below. deleteNo

## Print in Reverse

Given a pointer to the head of a singly-linked list, print each data value from the reversed list. If the given list is empty, do not print anything. Example head* refers to the linked list with data values 1->2->3->Null Print the following: 3 2 1 Function Description: Complete the reversePrint function in the editor below. reversePrint has the following parameters: Sing