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

Envío 4098

Problema 0x25 - Suma de un subarreglo grande

  • Autor: meow
  • Fecha: 2021-05-12 01:36:13 UTC (Hace más de 3 años)
Caso # Resultado Tiempo Memoria
#1
Correcto
0.161 s 12 KBi
#2
Correcto
0.125 s 13 KBi
#3
Correcto
0.121 s 15 KBi
#4
Correcto
0.126 s 13 KBi
#5
Correcto
0.135 s 14 KBi
#6
Correcto
0.178 s 15 KBi
#7
Correcto
0.152 s 14 KBi
#8
Correcto
0.852 s 45 KBi
#9
Tiempo límite excedido
1.212 s 53 KBi
#10
Tiempo límite excedido
1.045 s 54 KBi
#11
Tiempo límite excedido
1.17 s 66 KBi
#12
Tiempo límite excedido
1.136 s 60 KBi
#13
Tiempo límite excedido
1.041 s 55 KBi
#14
Tiempo límite excedido
1.047 s 56 KBi
Puntos totales: 58 / 100

Código

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int size = scanner.nextInt();
        int[] sumA = new int[size];
        int sum = 0;
        for(int i = 0; i < size; i++) {
            int num = scanner.nextInt();
            sum += num;
            sumA[i] = sum;
        }
        
        int operations = scanner.nextInt();
        
        for(int i = 0; i < operations; i++) {
            int p1 = scanner.nextInt();
            int p2 = scanner.nextInt();
            if(p1 == 0) {
                System.out.println(sumA[p2]);
            }
            else {
                System.out.println(sumA[p2] - sumA[p1 - 1]);
            }
        }        
        scanner.close();
    }
}