動的プログラミング(配列間隔)---間隔や配列

そして、配列間隔

303レンジ合計クエリ - 不変(簡単)

Given nums = [-2, 0, 3, -5, 2, -1]

sumRange(0, 2) -> 1
sumRange(2, 5) -> -1
sumRange(0, 5) -> -3

件名の説明:

  配列、および要求間隔のIJを考えます。和[i]がある和[J + 1] -sum [i]は、シークに変換することができる(0、I-1)および。

アイデアの分析:

  和[i]がある和[J + 1] -sum [i]は、シークに変換することができる(0、I-1)および。

コード:

public int[]dp;
public NumArray(int[]nums){
    dp=new int [nums.length+1];
    for(int i=1;i<=nums.length;i++){
        dp[i]=dp[i-1]+nums[i-1];
    }
}
public int sumRange(int i,int j){
    return dp[j+1]-dp[i];
}

おすすめ

転載: www.cnblogs.com/yjxyy/p/11116444.html