Враховуючи рядок символів, +=-
де є хоча б одне =
, вставте додатні цілі числа між усіма символами та на початку та в кінці таким чином, щоб математичні рівняння були задоволені.
Наприклад, з урахуванням введення
+-=-=
вам потрібно вставити натуральні цілі від A до F, як це
A+B-C=D-E=F
такі , що рівняння все задоволені, тобто A + B - C
і D - E
і F
все той же номер.
Існує багато можливих способів зробити це, оскільки, поки формуються рівняння, може використовуватися будь-який набір натуральних чисел. Кожен рядок тут є можливим дійсним результатом для введення +-=-=
:
2+3-4=6-5=1
1+1-1=2-1=1
4+2-4=4-2=2
100+1-10=182-91=91
89+231-77=1024-781=243
Зауважте, що значення виразів не обов'язково, щоб вони були додатними цілими числами, такими як вставлені числа. Наприклад, з урахуванням вхідних даних -=-
виходи 1-10=8-17
(овалі до -9) та 10-1=17-8
(овалі до 9) мають однакову силу. Звичайно, для деяких входів, таких як =
неможливо мати від'ємник як вираз, оскільки 5=5
можна вставити лише позитивні числа типу .
Зауважте також, що нуль не є додатним цілим числом.
Виграє найкоротший код у байтах.
Ви можете виводити числа як список, а не вставляти їх безпосередньо в рядок. Якщо ви виведете рядок, можуть бути пробіли, що розділяють символи та числа. Отже, для введення +-=-=
, виведення
2, 3, 4, 6, 5, 1
або
2 + 3 - 4 = 6 - 5 = 1
еквівалент виводу
2+3-4=6-5=1
Випробування
Input | One Possible Output
= | 1=1
== | 2=2=2
+= | 1+3=4
=+ | 2=1+1
-= | 30-10=20
=- | 1=2-1
=-= | 3=7-4=3
=+= | 2=1+1=2
=== | 100=100=100=100
+=- | 3+2=7-2
-=+ | 7-2=3+2
+=+ | 3+3=3+3
-=- | 1-10=8-17
--= | 60-1-1=58
++= | 60+1+1=62
-+= | 60-9+1=52
+-= | 60+9-1=68
+-=-= | 2+3-4=6-5=1
--=-- | 2-1-1=2-1-1
==-== | 47=47=50-3=47=47
=++=+-=-+=--= | 3=1+1+1=3+1-1=1-1+3=5-1-1=3
+--++-=-+-+- | 35+10-16-29+20+107-1000=5-4+3-2+1-876
====== | 8=8=8=8=8=8=8