int depthSum(const vector<NestedInteger>& nestedList, int depth) { int result = 0; for (int i = 0; i != nestedList.size(); ++i) { if (nestedList[i].isInteger()) result += depth * nestedList[i].getInteger(); else result += depthSum(nestedList[i].getList(), depth + 1); } return result; }
int depthSum(vector<NestedInteger>& nestedList, int depth) { int sum=0; for(auto item:nestedList) { if(item.isInteger()) sum += item.getInteger()*depth; else sum += depthSum(item.getList(), depth+1); } return sum; }
int depthSum(vector<NestedInteger>& nestedList, int depth) { int res = 0; for(auto l: nestedList) { res += (l.isInteger() ? (depth * l.getInteger()) : depthSum(l.getList(), depth + 1)); } return res; }
int depthSum(vector<NestedInteger>& nestedList, int level) { int n = nestedList.size(), i, ans = 0; for (i = 0; i < n; i++) { if (nestedList[i].isInteger()) { ans += nestedList[i].getInteger() * level; } else { ans += depthSum(nestedList[i].getList(), level+1); } } return ans; }
int depthSum(vector<NestedInteger>& nestedList) { return depthSum(nestedList, 1); }