0翻硬币 - 蓝桥云课 (lanqiao.cn)
题目描述
小明正在玩一个"翻硬币”的游戏
桌上放着排成一排的若干硬币。我们用”表示正面,用o表示反面(是小写字母,不是零)
比如,可能情形是:**oo***o00
如果同时翻转左边的两个硬币,则变为: oooo***oo0。
现在小明的问题是:如果已知了初始状态和要达到的目标状态,每次只能同时翻转相邻的两个硬币,那么对特定的局面最少要翻动多少次呢?
我们约定:把翻动相邻的两个硬币叫做一步操作
输入描述
两行等长的字符串,分别表示初始状态和要达到的目标状态
每行的长度<1000.
输出描述
个整数,表示最小操作步数
输入输出样例
import os
import sys# 请在此输入您的代码
start=list(str(input()))
end=list(str(input()))
ans=0
for i in range(len(start)):if start[i] != end[i] :if start[i]=="*":start[i]="o"else:start[i]="*"if start[i+1]=="*":start[i+1]="o"else:start[i+1]="*"ans+=1
print(ans)