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

Задача . A. Двоичный протокол


Задача

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

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

  • Каждая цифра представляется числом символов '1' равным значению этой цифры (для 0 — это ноль единиц).
  • Цифры записываются одна за другой в порядке, как в оригинальном числе, и разделяются единственным символом '0'.

И хотя Поликарп научился представлять число в виде двоичной строки, он так и не сумел понять, как перевести строку обратно в число. Помогите ему посчитать закодированное число.

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

В первой строке записано одно целое число n (1 ≤ n ≤ 89) — длина строки s.

Во второй строке записана строка s из символов '0' и '1' — число в формате бинарной строки. Гарантируется, что число, соответствующее строке, положительное и не превышает 109. Строка всегда начинается с символа '1'.

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

Выведите закодированное число.


Примеры
Входные данныеВыходные данные
1 5 6
1 2 0 1
2 5 2 3
2 5 0 1
1 3 0 1
3 4 1 2
4 5 2 3
3
2 2 1
1 2 1 100
-1

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

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