Сьогодні в моєму класі статистики я виявив, що деякі фактичні факти можуть бути спрощені при множенні разом! Наприклад:5! * 3! = 5! *3*2 = 5! *6 = 6!
Ваша робота:
Враховуючи рядок, що містить лише арабські цифри та знаки оклику, спростіть мою фабрику до її найкоротшого можливого рядка, щонайменше, кількість байтів для вашої мови, код стилю гольфу.
Вхідні дані
Рядок, що містить лише арабські цифри та знаки оклику. Фабрики для введення не будуть більшими за 200! Фактори не матимуть більше одного фактора на число. Введення може сприйматися як список цілих чисел.
Вихідні дані
Можливо скорочений рядок, який має еквівалентне значення на вході. Порядок - це неважливо. Факторні позначення є обов'язковими, але вам не потрібно використовувати більше одного факторіального символу на номер.
Тестові справи
In: 3!2!2!
Out: 4!
In 2!3!2!0!
Out: 4!
In: 7!2!2!7!2!2!2!2!
Out: 8!8!
In: 23!3!2!2!
Out: 24!
Also: 4!!
In: 23!3!2!2!2!
Out: 24!2!
In: 127!2!2!2!2!2!2!2!
Out: 128!
In: 32!56!29!128!
Out: 29!32!56!128!
Удачі
1!1!
просто порожній рядок?