,输入字符,询问是否能通过删除一些字母时期变为heide

问题遇到的现象和发生背景
用代码块功能插入代码,请勿粘贴截图
我的解答思路和尝试过的方法
我想要达到的结果给定一个字符串询问能否通过删除一些字母使其变为“heidi”。

如果可以输出“YES”,不然为“NO”

Input

abcheaibcdi

Output

YES

Input

hiedi

Output

NO
Input

qOaYju
Output

No

其实就是检查heidi是否为输入字符串的子序列,办法有很多,列举一二:

s = "heidi"
a = input()
for i in s:
    j = a.find(i)
    if j>-1:
        a = a[j:]
    else:
        print("NO")
        break
else:
    print("YES")

用正则也可以

import re
p = r'.*h.*e.*i.*d.*i'
print("YES") if re.findall(p,input()) else print("NO")

我的思路如下:
1、首先,获取一个字符串输入.

2、然后用五个if 来判断是否找到五个字符的位置,如果五个都找到,则打印"YES", 如果没有找到,则在相应else分支打印"NO",然后执行break退出循环。

参考链接:
python 查找字符串中某个字符的位置_python 字符串查找的4个方法和count函数_创新工场的博客-CSDN博客

代码如下:

s = input("请输入一个字符串:")  #获取一个字符串输入

pos =0  #用于记录寻到相应字符的位置
while  True :  #寻找查找位置

    pos=s.find('h',pos,len(s)) #首先寻找第一个字符 'h'
    if pos!=-1:  #如果找到,则继续寻找下一个字符
    
        pos=s.find('e',pos,len(s)) #继续寻找第二个字符 'e'
        if pos!=-1:  #如果找到,则继续寻找下一个字符
        
            pos=s.find('i',pos,len(s))   #继续寻找第三个字符 'i'         
            if pos!=-1:  #如果找到,则继续寻找下一个字符
            
                pos=s.find('d',pos,len(s)) #继续寻找第四个字符 'd'
                if pos!=-1:  #如果找到,则继续寻找下一个字符
                
                    pos=s.find('i',pos,len(s)) #继续寻找第五个个字符 'i'
                    if pos!=-1:   #如果找到,则打印"YES"                
                        print("YES")
                        break
                    else :  #如果没有找到第五个字符,则打印'NO',然后退出循环
                        print("NO") 
                        break
                else :  #如果没有找到第四个字符,则打印'NO',然后退出循环
                    print("NO") 
                    break          
            else :  #如果没有找到第三个字符,则打印'NO',然后退出循环
                print("NO") 
                break
                   
        else :  #如果没有找到第二个字符,则打印'NO',然后退出循环
            print("NO") 
            break
            
    else :    #如果没有找到第一个字符,则打印'NO',然后退出循环    
        print("NO") 
        break
        
             
        
                       
                        

        
                       
                        


img