From 92a302deec4d4ccbd28e73e3b2894ff6b2702394 Mon Sep 17 00:00:00 2001
From: reyadussalahin <reyadussalahin@gmail.com>
Date: Mon, 24 May 2021 10:47:35 +0600
Subject: [PATCH] added cumulative sum for list

sometimes we need to calculate cumulative sum for a list as follows:
```
def get_cumulative_sum(num_list: List[int]) -> List[int]:
    cumulative_sum = [0] * len(num_list)
    for i, v in enumerate(num_list):
        cumulative_sum[i] = v + (0 if i == 0 else cumulative_sum[i-1])
    return cumulative_sum
```

but it can be easily done with `itertools.accumulate` as follows:
```
cumulative_sum = list(itertools.accumulate(<list>))
```
---
 README.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/README.md b/README.md
index 19637c4..ae323e4 100644
--- a/README.md
+++ b/README.md
@@ -47,6 +47,7 @@ List
 ```python
 sum_of_elements  = sum(<collection>)
 elementwise_sum  = [sum(pair) for pair in zip(list_a, list_b)]
+cumulative_sum   = list(itertools.accumulate(<list>))
 sorted_by_second = sorted(<collection>, key=lambda el: el[1])
 sorted_by_both   = sorted(<collection>, key=lambda el: (el[1], el[0]))
 flatter_list     = list(itertools.chain.from_iterable(<list>))