Проблемний подарунок
Limits: 2 sec., 256 MiB
Зеник вже давно хотів зробити подарунок Марічці. Ну, тобто, він хотів, але ніяк не вистачало то грошей, то часу. І одного разу йому на вулиці всім відома компанія мобільного зв’язку (так, саме та, що вже всім набридла) всунула йому в руки sim-картку з номером, який складався лише з цифр.
Зеник подумав, що це просто подарунок долі, і вирішив подарувати цю
sim-картку Марічці. Лише одна проблема — номер там був на диво
ідіотський. А Марічка має улюблене щасливе число \(n\). Здавалось би, як це пов’язано? Але
таки зв’язок є. Принаймні Зеник його побачив. Він вирішив між кожними
двома послідовними цифрами номера поставити арифметичний знак, таким
чином, щоб після виконання арифметичних дій отримати щасливе число
Марічки. Оскільки Марічка мала трохи біляве волосся, то було вирішено,
що арифметичні знаки — це тільки плюс + та мінус
-.
Зеник теж не дуже здібний математик, тому ви просто зобов’язані допомогти йому розставити ці знаки.
Input
У першому рядку задано одне ціле число \(n\) — улюблене число Марічки.
У другому рядку задано номер, який Зеник отримав на вулиці. Номер складається тільки з цифр, та не містить ніяких інших додаткових символів.
Output
У єдиному рядку виведіть єдиний рядок — номер, у якому між кожними
двома послідовними цифрами стоїть знак плюс + чи мінус
-, або рядок No solution., якщо розставити
знаки не можливо.
Якщо існує декілька різних відповідей, вивести лексикографічно найменшу.
Constraints
\(0 \le n \le 10^{4774}\),
номер складається не більше ніж з 20 символів.
Samples
| Input (stdin) | Output (stdout) |
|---|---|
| 4 11211 | 1+1+2+1-1 |
| Input (stdin) | Output (stdout) |
|---|---|
| 7 44 | No solution. |
Notes
Існує декілька варіантів розставити арифметичні знаки так, щоб отримати число 4, а саме:
1+1+2+1-11+1+2-1+11-1+2+1+1
Проте лексикографічно найменшим є рядок 1+1+2+1-1.
Submit a solution
| Element Type | Created | Who | Problem | Compiler | Result | Time (sec.) | Memory (MiB) | # | Actions |
|---|
| Element Type | Created | Who | Problem | Compiler | Result | Time (sec.) | Memory (MiB) | # | Actions |
|---|