Étant donné une chaîne de caractères +=-
où il y en a au moins un =
, insérez des entiers positifs entre tous les symboles et au début et à la fin de sorte que les équations mathématiques soient satisfaites.
Par exemple, étant donné l'entrée
+-=-=
vous devez insérer des entiers positifs A à F comme celui-ci
A+B-C=D-E=F
de telle sorte que les équations sont toutes satisfaites, c'est A + B - C
-à- dire et D - E
et F
sont toutes le même nombre.
Il existe de nombreuses façons de le faire puisque, tant que les équations fonctionnent, tout ensemble d'entiers positifs peut être utilisé. Chaque ligne ici est une sortie valide possible à saisir +-=-=
:
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
Notez que la valeur des expressions n'est pas obligatoirement un entier positif comme le sont les nombres insérés. Par exemple, pour une entrée donnée, -=-
les sorties 1-10=8-17
(Evals à -9) et 10-1=17-8
(Evals à 9) sont toutes deux également valables. Bien sûr, pour certaines entrées comme =
il est impossible d'avoir un négatif comme expression car seuls des nombres positifs comme 5=5
peuvent être insérés.
Notez également que zéro n'est pas un entier positif.
Le code le plus court en octets gagne.
Vous pouvez afficher les nombres sous forme de liste au lieu de les insérer directement dans la chaîne. Si vous sortez la chaîne, il peut y avoir des espaces séparant les symboles et les nombres. Donc, pour l'entrée +-=-=
, la sortie
2, 3, 4, 6, 5, 1
ou
2 + 3 - 4 = 6 - 5 = 1
équivaut à la sortie
2+3-4=6-5=1
Cas de test
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