303.range-sum-query-immutable.go 448 B

12345678910111213141516171819202122232425
  1. type NumArray struct {
  2. sum []int
  3. }
  4. func Constructor(nums []int) (numArr NumArray) {
  5. n := len(nums)
  6. numArr.sum = make([]int, n+1)
  7. for i := 1; i <= n; i++ {
  8. numArr.sum[i] = numArr.sum[i-1] + nums[i-1]
  9. }
  10. return
  11. }
  12. func (this *NumArray) SumRange(i int, j int) int {
  13. return this.sum[j+1] - this.sum[i]
  14. }
  15. /**
  16. * Your NumArray object will be instantiated and called as such:
  17. * obj := Constructor(nums);
  18. * param_1 := obj.SumRange(i,j);
  19. */