Внутривузовские олимпиады/1-6 курсы/ТУСУР 2016


11. Пройдите и посчитайте

Автор задачи: Купрейчик Антон
Источник: Первый внутривузовский тур Региональной студенческой предметной олимпиады по программированию 13 марта 2016
Ограничение по времени: 1 с.
Ограничение по памяти: 64 МБ

Вы работяга. У вас есть график выполнения работ. Вы знаете сколько денег получите за каждый выполненный контракт. Но вот незадача - выполнять контракты нужно в строгой последовательности друг за другом. Вы хотите приобрести произведение искусства, а именно картину - работу талантливого художника. В галерее эта картина стоит X денег. Вы хотите узнать, согласно графику, сможете ли вы накопить денег на картину и если сможете, то после выполнения скольких контрактов.

Входные данные

В первой строке дано натуральное число N - количество контрактов в графике работ. В следующей строке через пробел дано N натуральных чисел di - количество денег, которое вы получите за i-й контракт. 1 ≤ N ≤ 10000, 1 ≤ di ≤ 1000, 1 ≤ iN. В следующей строке дано натуральное число X - стоимость картины. 1 ≤ X ≤ 109.

Выходные данные

Вывести одно натуральное число - минимальное количество контрактов, которое нужно выполнить, чтобы накопить на картину. Если после выполнения всех контрактов в графике, нужная сумма не накопится, то выведите число -1.

Примеры
Стандартный вводСтандартный вывод
3
3 2 5
4
2
4
5 1 1 2
9
4
4
5 1 1 1
9
-1