top1编程
← 返回题目
题解

【入门】计算能力

3 条题解

  • 0
    @ 2026-7-29 20:23:17
    #include<bits/stdc++.h>
    using namespace std;
    
    int a[100100];
    int b[100100];//前缀和 
    int l,r,n,m;
    
    int main(){
    	cin>>n>>m;    
    	for(int i = 1;i <= n;i++){
    		cin>>a[i];
    		b[i] = b[i-1] +a[i];
    	}
    	
    	for(int i = 1;i <= m;i++){
    		cin>>l>>r;
    		cout<<b[r]-b[l-1]<<endl;
    	}
        return 0;
    }
    
    • 0
      @ 2026-7-29 0:06:26
      #include<bits/stdc++.h>
      using namespace std;
      
      int a[100100];
      int b[100100];//前缀和 
      int l,r,n,m;
      
      int main(){
      	cin>>n>>m;    
      	for(int i = 1;i <= n;i++){
      		cin>>a[i];
      		b[i] = b[i-1] +a[i];
      	}
      	
      	for(int i = 1;i <= m;i++){
      		cin>>l>>r;
      		cout<<b[r]-b[l-1]<<endl;
      	}
          return 0;
      }
      
      • 0
        @ 2026-7-28 22:10:13
        #include<bits/stdc++.h>
        using namespace std;
        
        int a[100100];
        int b[100100];//前缀和 
        int l,r,n,m;
        
        int main(){
        	cin>>n>>m;    
        	for(int i = 1;i <= n;i++){
        		cin>>a[i];
        		b[i] = b[i-1] +a[i];//构建前缀和
        	}
        	
        	for(int i = 1;i <= m;i++){
        		cin>>l>>r;
        		cout<<b[r]-b[l-1]<<endl;//求区间差值
        	}
            return 0;
        }
        
        • 1