Heilongjiang Nongken Technology Vocational College da la bienvenida a las vacaciones de invierno multiescuela liga 2 (campo feliz ak) Problema C (suma de prefijo) notas de estudio

La primera vez que jugué un partido de entrenamiento, todavía era demasiado joven y no tenía suficientes conocimientos.

Tema:
Inserte la descripción de la imagen aquí
Dame el código que escribí en ese momento. (Usado 3 para bucles (), tiempo de espera).

#include<iostream>
#include<cmath>
using namespace std;
int main()
{
    
    
	int n,m;
	int b1,b2; 
	while (cin>>n>>m)
	{
    
    
		int a[n];
		for(int i=0;i<n;i++)
		{
    
    
			cin>>a[i];
		}
		for(int i=0;i<m;i++)
		{
    
    
			int sum=0;
			cin>>b1>>b2;
			for(int i=b1;i<=b2;i++)
			{
    
    
				sum=a[i-1]+sum;
			}
			cout<<sum<<endl;
		}
	 } 
	 return 0;
}

El código escrito después de leer las soluciones de otras personas.

#include<bits/stdc++.h>//C++万能头文件 
using namespace std;
long long sum[1000005];
int main()
{
    
    
    long long n,m,s;
    scanf("%d %d",&n,&m); 
    for(int i=1;i<=n;i++){
    
    
        cin>>s;
        sum[i]=sum[i-1]+s;//一维前缀和 
    }
    int i,j;
    for(int i=1;i<=m;i++){
    
    
        scanf("%d %d",&i,&j);
// //第1位到第j位的和减去第一位到第i-1位的和,得到第i位到第j位的和。 
        printf("%d\n",sum[j]-sum[i-1]); 
    }
    return 0;
}
// 

Aprendí un nuevo punto de conocimiento: suma de prefijo.
La suma de prefijos unidimensionales en
  realidad puede entenderse como la suma de los primeros n términos de una secuencia unidimensional en matemáticas.
  Para una secuencia A dada, su prefijo y secuencia S son una de la información básica que se puede obtener mediante recursividad:
  S [i] = ∑A [j] (j ∈ [1, i]) Una suma parcial, Es decir, la suma de los números en el intervalo de la secuencia A en la siguiente tabla también se puede expresar en forma de prefijo y resta: suma (l, r) = ∑A [i] (i ∈ [l, r]) = S [r] -S [l-1].
  Código:

	int sum[1] = a[1];
	for(int i=2;i<=n;i++){
    
    
		sum[i] = sum[i-1] + a[i];
	}

Con el prefijo y, oj dice OK (AC). Ollie da.

Supongo que te gusta

Origin blog.csdn.net/weixin_51765822/article/details/113075231
Recomendado
Clasificación