Kotlin Heroes: Episode 6 |
---|
Закончено |
Задана улица, которую можно представить массивом длины $$$n$$$.
Двое полицейских патрулируют эту улицу: первый стоит в точке $$$x$$$, а второй стоит в точке $$$y$$$.
В течение одной минуты оба полицейских могут решить, что им делать (независимо): пойти влево (если текущая позиция больше $$$1$$$), пойти вправо (если текущая позиция меньше $$$n$$$), или же не делать ничего.
Улица считается чистой, если каждая точка улицы посещена хотя бы одним полицейским.
Ваша задача — найти минимальное количество минут, необходимое полицейским для того, чтобы посетить каждую точку улицы (опять же, каждая точка должна быть посещена хотя бы одним из них).
Вам необходимо ответить на $$$t$$$ независимых наборов тестовых данных.
Первая строка входных данных содержит одно целое число $$$t$$$ ($$$1 \le t \le 2 \cdot 10^4$$$) — количество наборов тестовых данных. Затем следуют $$$t$$$ наборов тестовых данных.
Единственная строка набора тестовых данных содержит три целых числа $$$n$$$, $$$x$$$ и $$$y$$$ ($$$2 \le n \le 10^6$$$; $$$1 \le x, y \le n$$$; $$$x \ne y$$$) — длину улицы, позицию первого полицейского и позицию второго полицейского, соответственно.
Гарантируется, что сумма $$$n$$$ не превосходит $$$10^6$$$ ($$$\sum n \le 10^6$$$).
Для каждого набора тестовых данных выведите одно целое число — минимальное количество минут, необходимое полицейским, чтобы посетить каждую точку улицы.
6 4 1 2 7 7 1 10 2 6 8 5 2 2 1 2 20 4 14
2 3 5 4 0 12
Название |
---|