请告诉我如何构建一个算法来处理一个六位数的数字,以便可以通过数学运算找出它所包含的数字是否为100?
示例:
050500 ---> (0 + 50 + 50 + 0) == 100
595545 ---> (5 + ((9 * 5) + (5 + 45))) = 100
093342 ---> (0 + ((9 / (3 / 34)) - 2)) = 100
231357 ---> (2 - (3 * (((1 / 3) - 5) * 7))) = 100
...
我发现一篇关于 Habr 的文章 ( https://habr.com/ru/post/339654/ ),其中给出了一个类似的例子。
将 6 位数字转换为数字数组不是问题。
例如:a = 123456;
然后 String(a).split('').map(e => +e) // 输出 ---> [1,2,3,4,5,6]
但是如何进一步排列符号(+,-,/,*)并正确放置括号,这辈子我都想不起来:(我已经为这个任务苦苦挣扎了一个月。我想按照 Habr 的文章中描述的那样做(见上文),但我不知道如何在 java 脚本中实现这一点,甚至有可能在 JS 中创建这样的“动态”公式,还是你需要事先为动作指定模板,然后在其中替换数字???
请给我一个思考的方向。