# 339. Nested List Weight Sum

**<font color=red>难度: Easy</font>**

## 刷题内容

> 原题连接

* https://leetcode.com/problems/nested-list-weight-sum/description/

> 内容描述

```
Given a nested list of integers, return the sum of all integers in the list weighted by their depth.

Each element is either an integer, or a list -- whose elements may also be integers or other lists.

Example 1:

Input: [[1,1],2,[1,1]]
Output: 10 
Explanation: Four 1's at depth 2, one 2 at depth 1.
Example 2:

Input: [1,[4,[6]]]
Output: 27 
Explanation: One 1 at depth 1, one 4 at depth 2, and one 6 at depth 3; 1 + 4*2 + 6*3 = 27.
```

## 解题方案

> 思路 1
******- 时间复杂度: O(N)******- 空间复杂度: O(1)******

很简单的递归

假设nestedList铺平开来，里面一共有N个NestedInteger的话，时间复杂度就是O(N)

beats 99.77%

```python
class Solution:
    def depthSum(self, nestedList):
        """
        :type nestedList: List[NestedInteger]
        :rtype: int
        """
        def helper(nestedList, depth):
            res = 0
            for nested in nestedList:
                if nested.isInteger():
                    res += depth * nested.getInteger()
                else:
                    res += helper(nested.getList(), depth+1)
            return res
        return helper(nestedList, 1)
```
