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

Envío 4065

Problema 0x25 - Suma de un subarreglo grande

  • Autor: juanboterog
  • Fecha: 2021-05-02 20:17:06 UTC (Hace casi 3 años)
Caso # Resultado Tiempo Memoria
#1
Correcto
0.141 s 13 KBi
#2
Correcto
0.135 s 13 KBi
#3
Correcto
0.113 s 23 KBi
#4
Correcto
0.102 s 17 KBi
#5
Correcto
0.143 s 13 KBi
#6
Correcto
0.205 s 14 KBi
#7
Correcto
0.17 s 13 KBi
#8
Correcto
0.666 s 32 KBi
#9
Tiempo límite excedido
1.152 s 73 KBi
#10
Tiempo límite excedido
1.153 s 86 KBi
#11
Tiempo límite excedido
1.016 s 79 KBi
#12
Correcto
0.853 s 125 KBi
#13
Tiempo límite excedido
1.114 s 83 KBi
#14
Tiempo límite excedido
1.012 s 70 KBi
Puntos totales: 65 / 100

Código

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        int[] a = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = scanner.nextInt();
        }
        int[] s = new int[n];
        int sum = 0;
        for (int i = 0; i < n; i++) {
            sum += a[i];
            s[i] = sum;
        }
        int c = scanner.nextInt();
        for (int k = 0; k < c; k++) {
            int p = scanner.nextInt();
            int q = scanner.nextInt();
            solve(s, p, q);
        }
    }

    private static void solve(int[] s, int p, int q) {
        int sum = s[q];
        if (p - 1 >= 0) {
            sum -= s[p - 1];
        }
        System.out.println(sum);
    }
}