自己的代码感觉没错,为啥只能过20%的示例呢?
我的代码到底哪里有问题呢?哪个细节没处理好呢
n=int(input())
ls=[]
for i in range(n):
s=input()
ls.append(s)
v='88' # 初始化 v
res=0
for j in range(n-1):
if ls[j][0]==v[-1]:
res+=1
v+=ls[j][1]
else:
if ls[j][1]==v[-1]:
res+=1
v+=ls[j][0]
else:
if ls[j][1]==ls[j+1][0] or ls[j][1]==ls[j+1][1]: #不用翻转的判断
v+=ls[j]
res+=2
elif ls[j][0]==ls[j+1][0] or ls[j][0]==ls[j+1][1]: # 需要翻转的判断
v+=ls[j][::-1]
res+=2
else:
v+=ls[j]
res+=2
if ls[-1][0]==v[-1] or ls[-1][1]==v[-1]: # 对最后一个字符的特判
res+=1
else: res+=2
print(res)