eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Біти небезпечні

Біти небезпечні

Ви думаєте, що втікти від сна легко? Це не той випадок, коли сон про біти. Ви, напевно, учора читали занадто багато теорії, але це вже не має значення. Єдине, що Вам хочеться, так це проснутись. Вы, напевно, неправильно обчислили найкращий спеціальний рядок... чи вони тільки що обманули Вас. Довгий рядок бітів усе ще знаходиться перед Вашими закритими очима. Потом Ви зрозуміли, що у Вас є можливіть змвнити самий лівий біт цього рядка з \textbf{0} на \textbf{1}, чи з \textbf{1} на \textbf{0}. Це коштує у точності чотири секунди, але Ви це можете зробити! Потом Ви виявили, що можете також циклічно зсунути рядок на одну позицію ліворуч чи на одну позицію праворуч. Довільна з цих дій займає сім секунд у Вашому дивному сні. Щось підказує Вам, що саме \textbf{1}-біти тримають Вас у сні. Якщо раптом це правда, то Ви вирішили перетворити увесь рядок у нулі. У Вас є усе для цього необхідне. Але скільки часу знадобиться на це, якщо діяти оптимально? \InputFile Єдиний рядок \textbf{S }(\textbf{2} ≤ |\textbf{S}| ≤ \textbf{2}∙\textbf{10^5}), що складається з нулів та одиниць. \OutputFile Вивести найменший час, за який можна перетворити рядок \textbf{S} у рядок з одних нулів, у секундах. \Note У першому тесті оптимальною буде наступна стратегія: змінимо лівий біт: \textbf{01001}, зсунемо рядок циклічно ліворуч: \textbf{10010}, змінимо лівий біт: \textbf{00010}, зсунемо рядок циклічно праворуч: \textbf{00001}, зсунемо рядок циклічно праворуч (знову): \textbf{10000}, змінимо лівий біт: \textbf{00000}. Три зміни та три циклічних зсуви займуть рівно \textbf{33 }секунди.
Ліміт часу 1 секунда
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
11001
Вихідні дані #1
33
Автор Геннадій Короткевич
Джерело Gennady Korotkevich Contest 1, Petrozavodsk Training Camp, Day 1, Friday, August 23, 2013