█████████ ████ ███░░░░░███ ░░███ ███ ░░░ ██████ ███████ ██████ ██████ ░███ ███░░███ ███░░███ ███░░███ ███░░███ ░███ ░███ ░███░███ ░███ ░███████ ░███ ░███ ░░███ ███░███ ░███░███ ░███ ░███░░░ ░███ ░███ ░░█████████ ░░██████ ░░████████░░██████ ░░██████ ░░░░░░░░░ ░░░░░░ ░░░░░░░░ ░░░░░░ ░░░░░░

Envío 1575

Problema 0x25 - Suma de un subarreglo grande

  • Autor: lgonzalez
  • Fecha: 2020-11-05 22:59:42 UTC (Hace más de 3 años)
Caso # Resultado Tiempo Memoria
#1
Correcto
0.006 s 8 KBi
#2
Correcto
0.005 s 6 KBi
#3
Correcto
0.005 s 20 KBi
#4
Correcto
0.004 s 19 KBi
#5
Correcto
0.005 s 13 KBi
#6
Correcto
0.005 s 13 KBi
#7
Correcto
0.005 s 6 KBi
#8
Correcto
0.039 s 7 KBi
#9
Correcto
0.199 s 7 KBi
#10
Correcto
0.225 s 7 KBi
#11
Correcto
0.184 s 7 KBi
#12
Correcto
0.188 s 7 KBi
#13
Correcto
0.206 s 8 KBi
#14
Correcto
0.195 s 7 KBi
Puntos totales: 100 / 100

Código

package main

import (
	"bufio"
	"fmt"
	"os"
	"strconv"
)

func result_sum(a_sum []int, p int , q int) {
  result := a_sum[q]
  if p > 0 {
    result -= a_sum[p-1]
  }
  fmt.Println(result)
}

func main() {
  scanner := bufio.NewScanner(os.Stdin)
	scanner.Split(bufio.ScanWords)

	scanner.Scan()
	n, _ := strconv.Atoi(scanner.Text())
  
  a := make([]int, n)
  a_sum := make([]int, n)
  sum := 0
  for i := 0; i < n; i++ {
    scanner.Scan()
		a[i], _ = strconv.Atoi(scanner.Text())
    sum += a[i]
    a_sum[i] = sum
  }
  
  var c int
	scanner.Scan()
	c, _ = strconv.Atoi(scanner.Text())
  
  for i := 0; i < c; i++ {

    scanner.Scan()
    p, _ := strconv.Atoi(scanner.Text())
		
    scanner.Scan()
    q, _ := strconv.Atoi(scanner.Text())
    
    result_sum(a_sum, p, q)
  }

}