EduBrick

M. Варенье

2500 мс · 256 МБ · всё или ничего

В ряд стоят nn банок; в ii-й сейчас aia_i грамм варенья, а хочется, чтобы стало хотя бы bib_i.

Карлсон выполняет mm этапов. Этап задаётся числами ll, rr, xx, yy: в банку ll добавляется xx грамм, в банку l+1l+1 — x+yx + y, в банку l+2l+2 — x+2yx + 2y, и так далее до банки rr, куда добавляется x+y (r−l)x + y\,(r - l).

Для каждой банки нужно назвать номер первого этапа, после которого в ней стало хотя бы bib_i грамм.

Формат ввода

В первой строке nn (1≤n≤1051 \le n \le 10^5). Во второй строке nn чисел aia_i (0≤ai≤2⋅1090 \le a_i \le 2 \cdot 10^9). В третьей строке nn чисел bib_i (0≤bi≤2⋅1090 \le b_i \le 2 \cdot 10^9).

В четвёртой строке mm (0≤m≤1050 \le m \le 10^5). В следующих mm строках этапы: ll, rr, xx, yy (1≤l≤r≤n1 \le l \le r \le n, 0≤x,y≤1040 \le x, y \le 10^4). Этапы нумеруются с единицы.

Формат вывода

Выведите nn чисел через пробел. Число ii равно нулю, если в банке изначально было достаточно варенья, номеру этапа, после которого в ней стало хотя бы bib_i грамм, или −1-1, если этого так и не произошло.

Примеры

ввод
5
5 4 4 2 1
7 7 4 7 7
3
1 2 2 0
2 5 1 1
3 4 2 2
вывод
1 2 0 3 -1
ввод
1
0
0
0
вывод
0
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.