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

Задача . E. Оглянись


Вам дан массив целых чисел \(a_1, a_2, \ldots, a_n\). Вам нужно сделать его неубывающим за наименьшее количество операций. За одну операцию вы делаете следующее:

  • Выберите индекс \(1 \leq i \leq n\),
  • Сделайте \(a_i = a_i \cdot 2\).

Массив \(b_1, b_2, \ldots, b_n\) является неубывающим, если \(b_i \leq b_{i+1}\) для всех \(1 \leq i < n\).

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

Каждый тест состоит из нескольких наборов входных данных. Первая строка содержит единственное целое число \(t\) (\(1 \leq t \leq 10^4\)) — количество наборов входных данных. Далее следует их описание.

Первая строка каждого набора входных данных содержит целое число \(n\) (\(1 \leq n \leq 10^5\)) — размер массива \(a\).

Вторая строка каждого набора входных данных содержит \(n\) целых чисел \(a_1, a_2, \ldots, a_n\) (\(1 \leq a_i \leq 10^9\)).

Гарантируется, что сумма \(n\) по всем наборам входных данных не превосходит \(2 \cdot 10^5\).

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

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

Примечание

В первом наборе входных данных операции не нужно делать.

Во втором наборе входных данных нужно выбрать \(i = 2\), после чего массив будет равен \([2, 2]\).

В третьем наборе входных данных можно применить следующие операции:

  • Выбрать \(i = 3\), после чего массив будет равен \([3, 2, 2]\),
  • Выбрать \(i = 3\), после чего массив будет равен \([3, 2, 4]\),
  • Выбрать \(i = 2\), после чего массив будет равен \([3, 4, 4]\).

Примеры
Входные данныеВыходные данные
1 9
1
1
2
2 1
3
3 2 1
4
7 1 5 3
5
11 2 15 7 10
6
1 8 2 16 8 16
2
624323799 708290323
12
2 1 1 3 3 11 12 22 45 777 777 1500
12
12 11 10 9 8 7 6 5 4 3 2 1
0
1
3
6
10
3
0
2
66

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

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