Magali adora picolés. Quando ela termina de comer, ela dá o palito para Cebolinha, que tenta montar um triângulo com os palitos que já lhe foram dados. Assim que ele consegue montar, cebolinha sai satisfeito.
Você deve dizer quantos palitos Cebolinha tinha no momento em que ele concluiu seu triângulo ou dizer se isso nunca acontecer.
A primeira linha contém um inteiro N, 1 ≤ N ≤ 5·107, o número de palitos comidos por Magali. Seguem N linhas, a i-ésima com um inteiro pi, 1 ≤ pi ≤ 1018, o tamanho dos palitos, em cm, na ordem que Magali os come (e dá para Cebolinha).
Note que alguns palitos podem ser MUITO grandes. Se estiver usando C/C++/Java use inteiros de 64-bits (long long para C++). Para Python não tem problema.
Um inteiro K que diz quantos palitos o Cebolinha tinha quando ele finalmente montou seu triângulo ou -1 caso ele nunca consiga.
6 1 1 2 3 1 2
5
3 1 2 3
-1
2 5 5
-1
3 100000000000000000 100000000000000000 100000000000000001
3
Por exemplo, se Magali comeu, nessa ordem, palitos de tamanho 1,1,2,3,1,1. Apenas após o 5º palito ele consegue formar um triângulo, usando os palitos {1,1,1}. Note que com os palitos de tamanho {1,1,2} é possível formar um "triângulo degenerado" (uma reta), mas isso não conta!