Skip to content

Instantly share code, notes, and snippets.

@ampulhetadosaber
Created October 22, 2020 23:49
Show Gist options
  • Save ampulhetadosaber/b31b43136b2a470d2502c66e6a526b82 to your computer and use it in GitHub Desktop.
Save ampulhetadosaber/b31b43136b2a470d2502c66e6a526b82 to your computer and use it in GitHub Desktop.
#include <bits/stdc++.h>
using namespace std;
int v[1000000], aux[1000000];
int n,m;
int main()
{
cin >> n >> m; //Quantidade de elementos no vetor v e a quantidade de perguntas
for(int i = 1 ; i <= n ; i++)
{
cin >> v[i]; //O número na posição i do vetor
}
//igualamos as primeiras posições e percorremos da segunda até a ultima
aux[1] = v[1];
for(int i = 2 ; i <= n ; ++i)
{
//a posição i do aux é a soma de v[1] até v[i-1] que seria o aux[i-1] + v[i]
aux[i] = v[i] + aux[i-1];
}
for(int i = 1 ; i <= m ; i++)
{
int l,r; //O intervalo [l,r] na qual queremos a soma
cin >> l >> r;
//e diminuimos o aux[l-1] que seia a soma de [1,l-1] do aux[r] que seria a soma de [1,r] colocando elas em uma variavel resposta
int resposta;
resposta = aux[r] - aux[l-1];
cout << "No intervalo de " << l << " ate " << r << " a soma e " << resposta << "\n";
}
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment