使用python:您将获得两个字符串s和t,两者都由小写的英文字母组成。您将逐个字符地键入字符串s,从第一个字符到最后一个字符。 > > 特别之处在于,键入字符时,您可以按Backspace按钮,而不是按与之对应的按钮。Backspace会删除您刚刚键入的最后一个字符(如果您键入的字符串中没有字符,则不执行任何操作)。例如,如果s是"abcbd",并且您按Backspace而不是键入第一个和第四个字符,您将获得字符串"bd"(第一次按Backspace不删除任何字符,第二次按删除字符"c")。另一个例子,如果s是"abcaa",并且您用Backspace键代替最后两个字母,则得到的文本为"a"。 > > 您的任务是确定是否可以通过以上方式,从字符串s获取字符串t.例如:s = ababa, t = ba, 则输出Yes。s = ababa, t = bb, 则输出No。
时间: 2023-05-28 17:06:22 浏览: 146
Python中的字符串类型基本知识学习教程
思路:使用栈来模拟键入字符串s的过程,遇到字符则入栈,遇到Backspace则出栈。最后比较栈中剩余的字符是否等于字符串t。
代码如下:
```python
def can_get_t(s, t):
stack = []
for c in s:
if c == t[len(stack)]:
stack.append(c)
elif len(stack) > 0 and c == 'Backspace':
stack.pop()
return ''.join(stack) == t
s = 'ababa'
t = 'ba'
print(can_get_t(s, t)) # 输出 Yes
s = 'ababa'
t = 'bb'
print(can_get_t(s, t)) # 输出 No
```
阅读全文