11818. Плюс-мінус 1 - операція 2


Відправити розв'язок

Бали: 100
Time limit: 2.0s
Memory limit: 500M

Author:
Problem type
Allowed languages
C++, Java, Pascal, Python

Вам надано послідовність довжини \(N\): \(A=(A_1,A_2,\dots,A_N)\). Наступна дія над цією послідовністю називається операцією.

Спочатку оберіть таке ціле число \(i\), що \(1 \le i \le N\).

Далі виберіть \(і\) виконайте одну з наведених нижче дій.

  • Додайте 1 до \(A_i\).
  • Відніміть 1 від \(A_i\).

Дайте відповіді на \(Q\) запитів.

\(І\) запит полягає в наступному.

  • Розгляньте можливість виконання нуль або більше операцій, щоб змінити кожен елемент \(A\) на \(X_i\). Знайдіть мінімальну кількість операцій, необхідних для цього.

Обмеження

  • Усі значення у вхідних даних є цілими числами.
  • \(1 \le N,Q \le 2 \times 10^5\)
  • \(0 \le A_i \le 10^9\)
  • \(0 \le X_i \le 10^9\)

Формат вхідних даних

Перший рядок містить цілі числа \(N, Q\)

Наступний  рядок містить \(N\) цілих чисел \(A_i\)

Наступні  \(Q\) рядків містять цілі числа \(X_i\)

Числа у рядках розділяються пропуском.

Формат вихідних даних

У вихідний потік виведіть відповідь для кожного запиту в окремому рядку.

Примітка

До прикладу 1:

Ми маємо A=(6,11,2,5,5) і три запити. Для 1-го запиту ви можете змінити кожен елемент A на 5 за 10 операцій наступним чином.

  • Відніміть 1 від \(A_1\).
  • Відніміть 1 від \(A_2\) шість разів.
  • Додайте 1 до \(A_3\) тричі.

Неможливо змінити кожен елемент А на 5 за 9 або менше операцій.

Для 2-го запиту ви можете змінити кожен елемент А на 20 за 71 операцію.

Для 3-го запиту ви можете змінити кожен елемент A на 0 за 29 операцій.

Приклад вхідних даних

5 3
6 11 2 5 5
5
20
0

Приклад вихідних даних

10
71
29

Приклад вхідних даних

10 5
1000000000 314159265 271828182 141421356 161803398 0 777777777 255255255 536870912 998244353
555555555
321654987
1000000000
789456123
0

Приклад вихідних даних

3316905982
2811735560
5542639502
4275864946
4457360498

Коментарі

Ще немає коментарів.