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

Envío 1457

Problema 0x25 - Suma de un subarreglo grande

  • Autor: c4rlosc7
  • Fecha: 2020-10-28 00:40:19 UTC (Hace más de 3 años)
Caso # Resultado Tiempo Memoria
#1
Correcto
0.119 s 13 KBi
#2
Correcto
0.123 s 13 KBi
#3
Correcto
0.112 s 13 KBi
#4
Correcto
0.116 s 13 KBi
#5
Correcto
0.128 s 13 KBi
#6
Correcto
0.146 s 14 KBi
#7
Correcto
0.154 s 14 KBi
#8
Correcto
0.716 s 36 KBi
#9
Tiempo límite excedido
1.04 s 81 KBi
#10
Tiempo límite excedido
0.952 s 81 KBi
#11
Tiempo límite excedido
1.009 s 95 KBi
#12
Tiempo límite excedido
0.894 s 67 KBi
#13
Tiempo límite excedido
1.01 s 74 KBi
#14
Tiempo límite excedido
0.906 s 69 KBi
Puntos totales: 58 / 100

Código

import java.util.Scanner;

public class Main {

    public void solve(int[] a, int[] s, int p, int q) {
        int sum = s[q];
        /*int[] s = new int[a.length];
        for (int i = p; i <= q; i++) {
            sum += a[i];
            s[i] = sum;
        }*/
        if (p-1 >= 0) {
            sum -= s[p - 1];
        }
        System.out.println(sum);
    }
	public static void main(String[] args) {
        Main solve = new Main();
		Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();

        int [] a = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
        }

        int[] s = new int[n];
        int sum = 0;
        for (int i = 0; i < n; i++) {
            sum += a[i];
            s[i] = sum;
        }
        
        int c = sc.nextInt();
        int p = 0;
        int q = 0;
        for (int k = 0; k < c; k++) {
            p = sc.nextInt();
            q = sc.nextInt();
            solve.solve(a, s, p, q);
        }
	}
}