11180. Святині та храми


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

Бали: 100
Time limit: 1.0s
Memory limit: 64M

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

Вздовж дороги, яка йде зі сходу на захід, розміщено \(A\) святинь та \(B\) храмів. \(i\)-а святиня розміщена на відстані \(s_i\) від західного кінця дороги, а \(i\)-й храм на відстані \(t_i\) від західного краю дороги.

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

  • запит \(i\) (\(1 \le i \le Q\)): якщо ми починаємо рух на відстані \(x_i\) метрів від західного кінця дороги і вільно рухаємося по дорозі, то яку мінімальну відстань потрібно пройти, щоб відвідати одну святиню та один храм? Дозволяється, при потребі, проходити повз більше святинь чи храмів, ніж потрібно.

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

Перший рядок вхідного потоку містить цілі числа \(A, B, Q\) (\(1 \le A,B,Q \le 10^5\)), які розділяються пропуском.

Далі ідуть \(A\) рядків, які містять \(s_i\) (\(1 \le s_1 < s_2 <... < s_A \le 10^{10}\))

Наступні \(B\) рядків містять \(t_i\) (\(1 \le t_1 < t_2 < ... < t_B \le 10^{10}\))

Далі іде \(Q\) рядків, які містять \(x_i\) (\(1 \le x_i \le 10^{10}\))

Всі \(s_1..s_A\), \(t_1...t_B\), \(x_1...x_Q\) різні.

Всі числа цілі.

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

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

Примітка

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

Запит 1: початок у точці 150 від заходу. Оптимально пройти 50 м на захід, щоб відвідати святиню, а потім пройти 300 м на схід, щоб відвідати храм.

Запит 2: якщо почнемо з точки 2000 м від західного кінця, то оптимально буде пройти 1000 м на схід, щоб відвідати храм, а потім пройти 400 м на захід, щоб відвідати святиню.

...

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

2 3 4
100
600
400
900
1000
150
2000
899
799

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

350
1400
301
399

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

1 1 3
1
10000000000
2
9999999999
5000000000

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

10000000000
10000000000
14999999998

Коментарі

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