1 solutions

  • 1
    @ 2024-11-1 16:43:05

    算法分析

    s[i]=a[1]+a[2]...a[i]s[i]=a[1]+a[2]...a[i]的和

    那么可以通过 s[r]s[l1]=a[l]+a[l+1]...a[r]s[r]-s[l-1]=a[l]+a[l+1]...a[r]的和。

    代码实现

    #include<bits/stdc++.h>
    using namespace std;
    const int N=1e5+10;
    int a[N],s[N];
    int main()
    {
       int n,m;
       cin>>n>>m;
       for(int i=1;i<=n;i++)
       {
          cin>>a[i];
          s[i]=s[i-1]+a[i];
       }
       while(m--)
       {
          int res=0;
          int l,r;
          cin>>l>>r;
          cout<<s[r]-s[l-1]<<endl;
       }
       return 0;
    }
    
    • 1

    Information

    ID
    196
    Time
    500ms
    Memory
    256MiB
    Difficulty
    3
    Tags
    # Submissions
    45
    Accepted
    13
    Uploaded By