Монокарп открывает свою IT-компанию. Он хочет нанять $$$n$$$ программистов и $$$m$$$ тестировщиков.
На собеседование придут $$$n+m+1$$$ кандидатов, пронумерованных от $$$1$$$ до $$$n+m+1$$$ в хронологическом порядке их прибытия. У $$$i$$$-го кандидата есть навык программирования $$$a_i$$$ и навык тестирования $$$b_i$$$ (навык программирования человека отличается от его навыка тестирования). Навык команды — это сумма навыков программирования всех нанятых в качестве программистов и сумма навыков тестирования всех нанятых в качестве тестировщиков.
Когда кандидат приходит на собеседование, Монокарп пытается назначить его на наиболее подходящую должность (если его навык программирования выше, то как программиста, в противном случае как тестировщика). Если все места для этой должности заняты, Монокарп назначает его на другую должность.
Ваша задача — для каждого кандидата рассчитать навык команды, если на собеседование придут все, кроме него. Обратите внимание, что это означает, что придут ровно $$$n+m$$$ кандидатов, и все $$$n+m$$$ мест в компании будут заняты.
Первая строка содержит одно целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных.
Каждый набор входных данных состоит из трех строк:
Дополнительное ограничение на входные данные: сумма $$$(n + m + 1)$$$ по всем наборам входных данных не превышает $$$2 \cdot 10^5$$$.
Для каждого набора входных данных выведите $$$n + m + 1$$$ целых чисел, где $$$i$$$-е число должно быть равно навыку команды, если на собеседование придут все, кроме $$$i$$$-го кандидата.
41 02 11 20 24 5 55 4 11 22 1 5 45 2 3 13 14 3 3 4 15 5 4 5 2
1 2 5 6 9 8 11 11 12 13 13 13 12 15
Рассмотрим третий набор входных данных в примере:
Название |
---|