Wormly#2458

Wormly

1 секунда
64 мегабайти
Складна

Джонлі створює свою першу комп'ютерну гру. Для вступної сцени він хоче, щоб головний герой, Черв'яколі, перейшов через Містобуль, міст. Черв'яколі — це черв'як, який складається з однакових круглих бульбашок і має ніжок. У будь-який момент кожна ніжка має бути під однією з бульбашок, і під кожною бульбашкою може бути не більше однієї ніжки. Містобуль мав складатися з дощок, при цьому ширина кожної дошки дорівнює діаметру кожної з бульбашок Черв'яколі. Однак деякі дошки відсутні.

Щоразу Черв'яколі може виконати рівно одну з наступних дій:

У цьому прикладі єдиний можливий хід для останньої ніжки — це позиція . (Дошки в позиції немає, тому ніжка не може туди стати. Щоб опинитися на позиції , останній ніжці довелося б обігнати першу.) Також у цьому прикладі пересування всіх бульбашок вперед не дозволяється, оскільки остання ніжка Черв'яколі залишиться без бульбашки над нею.

Тепер Джонлі цікавиться, скільки часу триватиме анімація, поки Черв'яколі не дістанеться кінця Містобуля. Спочатку бульбашки Черв'яколі знаходяться безпосередньо над найлівішими дошками мосту, а ніжки — на найлівіших дошках. В кінці анімації бульбашки мають бути над найправішими дошками, а ніжки — на найправіших дошках. найлівіших та найправіших дощок Містобуля не відсутні.

Вхідні дані

У першому рядку задане додатнє ціле число: кількість тестових випадків, не більше . Далі для кожного тестового випадку:

  • Один рядок з трьома цілими числами , і (1 \leq l \leq b \leq n \leq 1\ 000\ 000): кількість ніжок, кількість бульбашок і довжина мосту відповідно.

  • Один рядок — рядок з символів, або '', або '', який описує Містобуль. Одиниця означає наявність дошки, нуль — її відсутність.

Вихідні дані

Для кожного тестового випадку:

  • Вивести у окремому рядку одне число: мінімальну кількість кроків, необхідних Черв'яколі, щоб перейти Містобуль. Якщо перейти через міст, дотримуючись усіх обмежень, неможливо — у рядку має бути "IMPOSSIBLE".

Приклади

Приклад 1

Loading
Loading