济南长兴建设集团有限公司网站,网站建站网站45133,纳米加工平台,网站开发 教学大纲文章目录1. 题目2. 解题1. 题目
假设你有一个长度为 n 的数组#xff0c;初始情况下所有的数字均为 0#xff0c;你将会被给出 k 个更新的操作。
其中#xff0c;每个操作会被表示为一个三元组#xff1a;[startIndex, endIndex, inc]#xff0c;你需要将…
文章目录1. 题目2. 解题1. 题目
假设你有一个长度为 n 的数组初始情况下所有的数字均为 0你将会被给出 k 个更新的操作。
其中每个操作会被表示为一个三元组[startIndex, endIndex, inc]你需要将子数组 A[startIndex ... endIndex]包括 startIndex 和 endIndex增加 inc。
请你返回 k 次操作后的数组。
示例:
输入: length 5, updates [[1,3,2],[2,4,3],[0,2,-2]]
输出: [-2,0,3,5,3]解释:
初始状态:
[0,0,0,0,0]
进行了操作 [1,3,2] 后的状态:
[0,2,2,2,0]
进行了操作 [2,4,3] 后的状态:
[0,2,5,5,3]
进行了操作 [0,2,-2] 后的状态:
[-2,0,3,5,3]来源力扣LeetCode 链接https://leetcode-cn.com/problems/range-addition 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 2. 解题
类似题目 LeetCode 1109. 航班预订统计差分思想 LeetCode 1094. 拼车
左端点加上数字右端点1的位置 减去该数字最后遍历求前缀和
class Solution {
public:vectorint getModifiedArray(int length, vectorvectorint updates) {vectorint ans(length, 0);for(auto u : updates){ans[u[0]] u[2];if(u[1]1 length)ans[u[1]1] - u[2];}for(int i 1; i length; i)ans[i] ans[i-1];return ans;}
};40 ms 14.1 MB 我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号Michael阿明一起加油、一起学习进步