2024年最全前缀和算法及模板详解_前缀和算法实例(1),2024年最新谈谈我认为的高级Golang开发到底应该是怎样的

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

[

n

]

S_i[n]

Si​[n]?

image-20220913220721117

模板2:求[l, r]

[

l

,

r

]

=

S

r

S

l

1

[l, r] = S_r - S_{l-1}

[l,r]=Sr​−Sl−1​

下标从1开始,为了定义为$S_{0} = 0 $ ,这么定义的好处是可以将

[

l

,

r

]

=

S

r

S

l

1

[l, r] = S_r - S_{l-1}

[l,r]=Sr​−Sl−1​,这个公式应用在所有场景下,包括

[

1

,

x

]

=

S

[

x

]

S

[

0

]

[1, x] = S[x] - S[0]

[1,x]=S[x]−S[0] 。

例题:前缀和

输入一个长度为 n 的整数序列。

接下来再输入 m 个询问,每个询问输入一对 l,r。

对于每个询问,输出原序列中从第 l 个数到第 r 个数的和。

输入格式

第一行包含两个整数 n 和 m。

第二行包含 n 个整数,表示整数数列。

接下来 m 行,每行包含两个整数 l 和 r,表示一个询问的区间范围。

输出格式

共 m 行,每行输出一个询问的结果。

数据范围

1≤l≤r≤n,
1≤n,m≤100000
−1000≤数列中元素的值≤1000

输入样例:

5 3
2 1 3 6 4
1 2
1 3
2 4

输出样例

3
6
10

代码模板
#include<bits/stdc++.h>
using namespace std;

const int N = 100010;

int a[N],s[N];

int main()
{
    ios::sync\_with\_stdio(false);
    int m , n;
    
    scanf("%d%d", &n ,&m);
    for(int i = 1; i <= n; i++)scanf("%d",&a[i]);
    
    for(int i = 1; i <= n; i++)s[i] = s[i - 1] + a[i];
    
    while( m-- )
    {
        int l ,r;
        scanf("%d%d", &l, &r);
        printf("%d\n", s[r] - s[l-1]);
    }
    return 0;
}

二维前缀和

S[i][j] : 两个方向的前缀和,左上角这一部分所有元素的和。

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

mg-Gu5k1gJC-1715725497177)]
[外链图片转存中…(img-xu4MDTIN-1715725497177)]

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 11
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值