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

Envío 3610

Problema 0xf2 - Partir un arreglo grande en 2

  • Autor: jocarmp08
  • Fecha: 2021-04-03 23:15:51 UTC (Hace alrededor de 3 años)
Caso # Resultado Tiempo Memoria
#1
Correcto
0.02 s 3 KBi
#2
Correcto
0.022 s 3 KBi
#3
Correcto
0.022 s 3 KBi
#4
Correcto
0.031 s 8 KBi
#5
Correcto
0.016 s 3 KBi
#6
Correcto
0.028 s 6 KBi
#7
Correcto
0.026 s 3 KBi
#8
Correcto
0.017 s 3 KBi
#9
Correcto
0.025 s 3 KBi
#10
Correcto
0.017 s 3 KBi
#11
Correcto
0.033 s 4 KBi
#12
Correcto
0.022 s 3 KBi
#13
Correcto
0.039 s 3 KBi
#14
Correcto
0.255 s 37 KBi
#15
Correcto
0.265 s 27 KBi
#16
Correcto
0.266 s 29 KBi
#17
Correcto
0.294 s 29 KBi
#18
Correcto
0.205 s 30 KBi
#19
Correcto
0.238 s 29 KBi
#20
Correcto
0.334 s 58 KBi
Puntos totales: 100 / 100

Código

from itertools import accumulate


def split_array(array):
    accumulation = list(accumulate(array))
    last_item = len(accumulation) - 1
    for i in range(last_item):
        if accumulation[last_item] - accumulation[i] < 0 and accumulation[i] > 0:
            print(i + 1)
            return

    print("Impossible")


array_size = int(input())
array = [int(x) for x in input().split()]
split_array(array)