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

Задача . A. Жизни цветов важны


Задача

Темы: реализация *800

Пете на день рождения подарили очень необычный цветок, но Петя не всегда бывает дома и не всегда может его поливать. Вам даны \(n\) дней из жизни Пети, вы должны сказать, что станет с цветком в конце.

Цветок обладает следующими свойствами:

  • Если цветок не полить два дня подряд, то он завянет.
  • Если в \(i\)-й день цветок полили, то он вырастает на \(1\) сантиметр.
  • Если цветок полили и в \(i\)-й, и в \((i-1)\)-й день (\(i > 1\)), то цветок растёт на \(5\) сантиметров вместо \(1\).
  • Если в \(i\)-й день цветок не полили, то в этот день он не растёт.

На начало \(1\)-го дня высота цветка равна \(1\) сантиметру. Чему равна высота цветка в конце \(n\)-го дня?

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

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

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

Во второй строке набора находятся \(n\) целых чисел \(a_1, a_2, \dots, a_n\) (\(a_i = 0\) или \(a_i = 1\)). Если \(a_i = 1\), то Петя полил цветок в \(i\)-й день, иначе не полил.

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

Для каждого набора входных данных требуется вывести единственное число \(k\) — размер цветка после \(n\) дней, или \(-1\), если цветок завял.


Примеры
Входные данныеВыходные данные
1 4
3
1 0 1
3
0 1 1
4
1 0 0 1
1
0
3
7
-1
1

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

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