З огляду на введення списку блоків, які потрібно скинути в певних точках, вивести висоту отриманої "вежі".
Найкращий спосіб пояснити цей виклик на прикладі. Вхідним буде список 2n цілих чисел, що представляють n блоків. Перше ціле число - це позиція блоку x, індексовано 0, а друге - наскільки широкий блок. Наприклад, вхід 2 4представляє блок (з x координатами, позначеними нижче):
####
0123456789
Тепер, скажімо, вхід є 2 4 4 6. Тобто один блок при x = 2 при ширині 4, а один при x = 4 при ширині 6:
######
####
Зауважте, що блоки a.) Завжди "падають" з самої вершини вежі, і b.) Блоки ніколи не "впадуть" (тобто вони завжди будуть врівноважуватися). Отже, вхід
2 4 4 6 12 1являє собою:
######
#### #
Зауважте, що остаточний блок впав аж до "землі".
Ваш кінцевий вихід повинен бути максимальною висотою вежі при кожному значенні x до найбільшого. Отже, вхід 2 4 4 6 12 1повинен спричинити вихід
0011222222001:
######
#### #
0011222222001
Введення може бути подано у вигляді рядка пробілу / кома, розділеного комою, масиву цілих чисел або аргументів функції / командного рядка. Позиції блоку (значення x) завжди будуть цілими числами 0 або більше, ширина завжди буде цілим числом 1 або більше, і завжди буде щонайменше один блок.
Вихід може бути поданий у вигляді одного рядка, розділеного нечисловими символами (наприклад "0, 0, 1, ..."), одного рядка з переліком усіх цифр (наприклад
"001...", максимальна висота гарантовано дорівнює 9 або менше) або масиву цілих чисел.
Оскільки це код-гольф , найкоротший код у байтах виграє.
Тестові приклади:
In Out
---------------------------------------------------------
2 4 4 6 12 1 0011222222001
0 5 9 1 6 4 2 5 1133333222
0 5 9 1 2 5 6 4 1122223333
0 5 2 5 6 4 9 1 1122223334
20 1 20 1 20 1 00000000000000000003
5 5 000011111
0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 4 123456789999