给定一串+=-
至少包含一个字符的字符串,请=
在所有符号之间以及在开头和结尾处插入正整数,以便满足数学方程式。
例如,给定输入
+-=-=
您需要像这样插入正整数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
(从eval到-9)和10-1=17-8
(从eval到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