Олимпиадный тренинг

Задача . A. Каменная игра


Поликарп играет в новую компьютерную игру. В этой игре есть \(n\) камней, выстроенных в ряд и пронумерованных слева направо. Камень с номером \(i\) обладает целочисленной силой \(a_i\). Силы всех камней различны.

Каждый ход Поликарп может уничтожить либо камень с наименьшим номером, либо камень с наибольшим номером (другими словами, либо самый левый, либо самый правый) из еще не уничтоженных камней.

Сейчас Поликарп хочет получить два достижения. Он получит их, если уничтожит камень с наименьшей силой и камень с наибольшей силой. Помогите Поликарпу узнать, какое минимальное количество ходов он должен сделать, чтобы добиться своей цели.

Например, если \(n = 5\) и \(a = [1, 5, 4, 3, 2]\), то Поликарп мог делать следующие ходы:

  • Уничтожить самый левый камень. После этого хода \(a = [5, 4, 3, 2]\).
  • Уничтожить самый правый камень. После этого хода \(a = [5, 4, 3]\).
  • Уничтожить самый левый камень. После этого хода \(a = [4, 3]\). Поликарп уничтожил камни с наибольшей и наименьшей силой, поэтому может заканчивать игру.

Обратите внимание, что в примере выше можно закончить игру и за два шага. Например:

  • Уничтожить самый левый камень. После этого хода \(a = [5, 4, 3, 2]\).
  • Уничтожить самый левый камень. После этого хода \(a = [4, 3, 2]\). Поликарп уничтожил камни с наибольшей и наименьшей силой, поэтому может заканчивать игру.

Найдите минимальное количество ходов, необходимое для уничтожения камней с наибольшей и наименьшей силой.

Входные данные

В первой строке находится целое число \(t\) (\(1 \le t \le 100\)). Далее следуют \(t\) наборов входных данных.

В первой строке каждого набора входных данных находится одно целое число \(n\) (\(2 \le n \le 100\)) — количество камней.

Во второй строке находится \(n\) целых различных чисел \(a_1, a_2, \ldots, a_n\) (\(1 \le a_i \le n\)) — силы камней.

Выходные данные

Для каждого набора входных данных выведите одно целое число — минимальное количество ходов, необходимое для уничтожения камней с наибольшей и наименьшей силой.


Примеры
Входные данныеВыходные данные
1 5
5
1 5 4 3 2
8
2 1 3 4 5 6 8 7
8
4 2 3 1 8 6 7 5
4
3 4 2 1
4
2 3 1 4
2
4
5
3
2

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя