• leetcode 303. Range Sum Query


    Given an integer array nums, find the sum of the elements between indices i and j (i ≤ j), inclusive.

    Example:

    Given nums = [-2, 0, 3, -5, 2, -1]
    
    sumRange(0, 2) -> 1
    sumRange(2, 5) -> -1
    sumRange(0, 5) -> -3
    

    Note:

    1. You may assume that the array does not change.
    2. There are many calls to sumRange function.

    前缀和的应用,很简单。

    class NumArray {
    public:
        int n;
        vector<int> s;
        NumArray(vector<int> &nums) {
            n = nums.size();
            if(n==0)return;
            
            s.push_back(nums[0]);
            for(int i=1;i<n;i++){
                s.push_back(s.back()+nums[i]);
            }
        }
    
        int sumRange(int i, int j) {
            if(i>j)return 0;
            if(i==0) return s[j];
            return s[j]-s[i-1];
        }
    };
    
    
    // Your NumArray object will be instantiated and called as such:
    // NumArray numArray(nums);
    // numArray.sumRange(0, 1);
    // numArray.sumRange(1, 2);
  • 相关阅读:
    WIKI 配置参数
    SSH远程错误或者登录解决方法
    Mysql my.conf配置说明
    Mysql 常用命令
    Nginx 开机启动
    排序的总结
    strcpy函数实现(转载)
    函数指针传递
    地址的强制转换
    结构体内存对齐
  • 原文地址:https://www.cnblogs.com/zywscq/p/5408424.html
Copyright © 2020-2023  润新知