使用字符串解析的递归数学运算

问题描述 投票:0回答:1

我想递归地解析输入字符串以解决数学问题。

输入以这种形式给出:

(P1=[X=(0.6,3),Y=(0.4,-1)],P2=[X=(0.3,0),Y=(0.4,[Y1=(0.8,[X=(0.2,1),Y=(0.8,2)]),Y2=(0.2,3)]),Z=(0.3,2)],P3=[A=(1,1)])

目标是计算P1P2P3,找出最有价值的人。

这个问题的数学解决方案是这样的:

P1 = 0.6 * 3 + 0.4 * (-1) = 1.4
P2 = 0.3 * 0 + 0.4 * ( 0.8 * (0.2 * 1 + 0.8 * 2) + 0.2 * 3) + 0.3 * 2 = 1.416
P3 = 1 * 1 = 1

所以,P2 > P1 > P3

输出应该是P2

这是一个简单的问题,它可能在括号内有更多的操作。

我不知道如何用不同的分隔符分割输入字符串以及如何递归地进行分割。

我是编程和python的新手,但任何帮助都会受到赞赏。

python recursion text-parsing string-parsing
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.