Codeforces Global Round 27 |
---|
Закончено |
Вам дан массив $$$b$$$ длины $$$m$$$. Вы можете выполнить следующую операцию любое количество раз (возможно, нулевое):
Ваша задача — максимизировать сумму массива после выполнения любого количества таких операций. Поскольку она может быть большой, выведите эту сумму по модулю $$$10^9+7$$$.
Поскольку эта задача слишком простая, вам дается массив $$$a$$$ длины $$$n$$$, и вам нужно решить задачу для каждого префикса $$$a$$$.
Другими словами, обозначив максимальную сумму $$$b$$$ после выполнения любого количества таких операций как $$$f(b)$$$, вам нужно вывести $$$f([a_1])$$$, $$$f([a_1,a_2])$$$, $$$\ldots$$$, $$$f([a_1,a_2,\ldots,a_n])$$$ по модулю $$$10^9+7$$$.
Каждый тест состоит из нескольких наборов входных данных. Первая строка содержит одно целое число $$$t$$$ ($$$1\le t\le 10^4$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
Первая строка каждого набора входных данных содержит одно целое число $$$n$$$ ($$$1 \le n \le 2 \cdot 10^5$$$) — длина $$$a$$$.
Вторая строка содержит $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$ ($$$1 \le a_i \le 10^9$$$) — начальные значения массива $$$a$$$.
Гарантируется, что сумма $$$n$$$ по всем наборам входных данных превосходит $$$2 \cdot 10^5$$$.
Для каждого набора входных данных выведите $$$n$$$ целых чисел, являющимися ответами для каждого префикса $$$a$$$ по модулю $$$10^9+7$$$.
3101 2 3 4 5 6 7 8 9 10111 6 9 4 7 4 4 10 3 2 34527792568 502211460 850237282 374773208
1 3 8 13 46 59 126 149 1174 1311 1 7 22 26 70 74 150 1303 1306 1308 1568 527792568 83665723 399119771 773892979
Для каждого префикса в первом наборе входных данных возможен следующий массив после применения операций:
Название |
---|