Фредерик — молодий програміст. Він бере участь у всіх змаганнях з програмування, які тільки може знайти, і завжди пише своєю улюбленою мовою програмування Fygon. На жаль, він часто отримує вердикт Time Limit Exceeded, навіть коли його алгоритм асимптотично оптимальний. Причина в тому, що інтерпретатор Fygon працює дуже повільно. Тим не менш, Фредерик настільки любить Fygon, що вдається до неасимптотичних оптимізацій, щоб уложити свої рішення в обмеження за часом. Щоб спростити собі завдання, він просить вас написати програму, яка обчислює точну кількість операцій, що виконуються його програмою на Fygon.
Для простоти вважатимемо, що у Fygon є лише два види операторів. Перший — lag, який може замінювати майже будь-який інший оператор. Другий — цикл for:
for <variable> in range (<limit>):
<body>Тут <variable> набуває всіх значень від до <limit> - . У Fygon <variable> — це рядкова латинська літера від до , а <limit> — або раніше визначена змінна <variable>, або додатна ціла константа. Тіло циклу <body> записується з відступом у чотири пробіли і містить принаймні один оператор.
Програма отримує вхідні дані в змінній . Ця змінна має особливе значення і не може використовуватися як змінна циклу.
Ваше завдання — знайти формулу, яка виражає кількість операцій lag, що виконуються заданою програмою на Fygon, залежно від .
Містить програму на Fygon. Жодні два цикли не використовують одну й ту саму змінну як лічильник. Кожна змінна, яка використовується всередині range, — це або , або змінна, оголошена в одному із зовнішніх циклів.
Програма містить не більше операторів, з яких не більше є циклами. Усі цілочисельні константи лежать у діапазоні від до включно.
Виведіть формулу для кількості виконуваних операцій lag залежно від . Довжина формули не повинна перевищувати символів (без урахування пробілів), і формула повинна відповідати наступній граматиці:
<Expression> ::= <Product> (('+' | '-') <Product>)*
<Product> ::= <Value> ('*' <Value>)*
<Value> ::= 'n' | <Number> | '-' <Value> | '(' <Expression> ')'
<Number> ::= ['0'..'9']+ ('/' ['0'..'9']+)?Приклад 1