Вычисление суммы по модулю m

Операции на видеокарте (GPU) легко распараллеливаются. Если нужно выполнить один и тот же тип операции над множеством чисел одновременно, это будет работать быстрее, чем разные виды операций. Сейчас команда тестирует свой код, поэтому они просят вас написать программу, которая проверит вычисление суммы многих чисел по модулю.
Даны два списка целых чисел и . Вам нужно вычислить сумму каждого элемента из и по модулю :
Обратите внимание, что разные языки программирования по-разному реализуют операцию взятия по модулю. В Python результат всегда неотрицательный. Но в таких языках, как C++, результат может быть отрицательным (например, -3 % 2 → -1). Один из популярных способов исправить это — добавить к результату модуль m, если он отрицательный (используя оператор if). Более универсальный подход — это прибавить m и снова взять результат по модулю: ((a % m) + m) % m. Это позволяет гарантировать, что результат всегда будет положительным.

Ввод

Первая строка содержит одно целое число n (1 ≤ n ≤ 100 000) — количество элементов.
Вторая строка содержит n целых чисел, разделённых пробелами: ().
Третья строка содержит n целых чисел, разделённых пробелами: ().
Последняя строка содержит n целых чисел, разделённых пробелами: (1 ≤ ).

Вывод

Программа должна вывести n целых чисел, разделённых пробелами, — результаты вычисления .

Примеры

Ввод
Вывод
3 1 2 1 3 4 1 2 5 3
0 1 2

Пояснение

 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue