摘要:題目解法這題與算法無關,是個數學題。思想是把所有需要相加的值存在第一個數,然后把這個范圍的最后一位的下一位減去這個這樣我所以這個范圍在求最終值的時候,都可以加上這個,而后面的數就不會加上。
題目:
Assume you have an array of length n initialized with all 0"s and are given k update operations.
Each operation is represented as a triplet: [startIndex, endIndex, inc] which increments each element of subarray A[startIndex ... endIndex] (startIndex and endIndex inclusive) with inc.
Return the modified array after all k operations were executed.
Example:
Given: length = 5, updates = [ [1, 3, 2], [2, 4, 3], [0, 2, -2] ] Output: [-2, 0, 3, 5, 3]
Explanation:
Initial state: [ 0, 0, 0, 0, 0 ] After applying operation [1, 3, 2]: [ 0, 2, 2, 2, 0 ] After applying operation [2, 4, 3]: [ 0, 2, 5, 5, 3 ] After applying operation [0, 2, -2]: [-2, 0, 3, 5, 3 ]
解法:
這題與算法無關,是個數學題。思想是把所有需要相加的值存在第一個數,然后把這個范圍的最后一位的下一位減去這個inc, 這樣我所以這個范圍在求最終值的時候,都可以加上這個inc,而后面的數就不會加上inc。
public int[] getModifiedArray(int length, int[][] updates) { int[] result = new int[length]; for (int i = 0; i < updates.length; i++) { int start = updates[i][0], end = updates[i][1]; int inc = updates[i][2]; result[start] += inc; if (end < length - 1) { result[end + 1] -= inc; } } int sum = 0; for (int i = 0; i < length; i++) { sum += result[i]; result[i] = sum; } return result; }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/64910.html
摘要:題目鏈接這道題暴力法是可以的,每次把所有在到之間的值都更新一遍,不過題目要求要,所以其實每次更新只能用的時間。如果結束的地方就在末尾,那就不更新。 370. Range Addition 題目鏈接:https://leetcode.com/problems... 這道題暴力法是可以的,每次把所有在start到end之間的值都更新一遍,不過題目要求要O(k+n),所以其實每次更新只能用c...
Problem Assume you have an array of length n initialized with all 0s and are given k update operations. Each operation is represented as a triplet: [startIndex, endIndex, inc] which increments each el...
摘要:需要對個人的日語元音的發音分析,然后根據分析確定名發音者。九個發音者發出兩個日本元音先后。其中每塊數據中包含的行數為到不等,每行代表著發音者的一個時間幀。 業務理解(Business Understanding) 該業務是分類問題。需要對9個人的日語元音ae的發音分析,然后根據分析確定9名發音者。ae.train文件是訓練數據集,ae.test文件是用來測試訓練效果的,size_ae...
摘要:效率比較低,依賴解釋器,跨平臺性好語言編譯執行過程下面都是鳥哥博客的內容深入理解原理之引擎對這個文件進行詞法分析,語法分析,編譯成,然后執行。 編譯型語言和解釋型語言 從PHP,Java和C語言的編譯執行過程可以先解釋下編譯型語言和解釋型語言。 編譯型語言 程序在執行之前需要一個專門的編譯過程,把程序編譯成為機器語言的文件,運行時不需要重新翻譯,直接使用編譯的結果就行了。程序執行效率高...
閱讀 3567·2021-08-02 13:41
閱讀 2415·2019-08-30 15:56
閱讀 1523·2019-08-30 11:17
閱讀 1179·2019-08-29 15:18
閱讀 583·2019-08-29 11:10
閱讀 2679·2019-08-26 13:52
閱讀 513·2019-08-26 13:22
閱讀 2954·2019-08-23 15:41