第二题的一个思路
import re
string = 'abcdef'
# 去掉 bdf 之后是否合法
string_1 = re.sub(r'[bdf]', '', string)
# 去掉 ace 之后是否合法
string_2 = re.sub(r'[ace]', '', string)
def fun(string,hashmap):
flag = []
# a #c #f
# a<c<f
if len(string)<=0:
return True
l = list(map(lambda x: hashmap[x],string))
for i in range(1,len(l)):
if l[i]<l[i-1]:
return False
return True
flag1 = fun(string_1,{'a':0,'c':1,'e':2})
flag2 = fun(string_2,{'b':0,'d':1,'f':2})
print(flag1 and flag2)