Вам дан массив a из n целых чисел, и требуется ответить на q запросов. Каждый запрос задаётся вопросом: «Какова сумма элементов массива a в пределах индексов [l; r]?» (оба конца включаются, при этом индексация начинается с 0). В этот раз количество запросов и размер массива гораздо больше. Может ли найтись способ отвечать на такие запросы быстрее?
Входные данные
Первая строка входа содержит одно целое число n — количество элементов в массиве (1 ≤ n ≤ ). Следующая строка содержит n целых чисел, записанных через пробел, которые составляют массив .
Далее следует строка с одним целым числом q — количеством запросов (1 ≤ q ≤ ). В следующих q строках идут запросы формата .
Выходные данные
Программа должна вывести q строк, где каждая строка представляет собой сумму элементов массива a между индексами (оба конца включаются).