在Python中编写程序以检查最终字符串是否可以使用其他两个字符串组成
假设我们有两个字符串s,t,还有另一个字符串r,我们必须检查是否有任何方法可以通过按顺序合并从s和t中的字符来获取r。
因此,如果输入类似于s=”xyz” t=”mno” r=”xymnoz”,则输出将为True,因为通过交错xyz和mno可以形成xymnoz。
为了解决这个问题,我们将按照以下步骤进行−
- 定义函数solve()。这将采取s,t,r
-
如果s,t和r为空,则
- 返回真
- 如果r为空,则
-
返回假
- 返回真
-
如果s为空,则
- 当t与r相同时返回真,否则返回假
- 如果t不是零,则
- 返回s与r相同
- 如果s [0]与r [0]相同,则
- 如果solve(s[from index 1 to end], t, r[from index 1 to end])为真,则
- 返回真
- 如果solve(s[from index 1 to end], t, r[from index 1 to end])为真,则
- 如果t [0]与r [0]相同,则
- 如果solve(s,t[from index 1 to end],r[from index 1 to end])为真,则
- 返回真
- 如果solve(s,t[from index 1 to end],r[from index 1 to end])为真,则
- 返回假
让我们看一下以下实现以获得更好的理解−