关注
没有参加这次的笔试,因为不敢。
按照上面的题目理解,我也尝试给出一个Solution。
基本思路:
1. s1元素的最后元素在s2中找到对应位置;
2. 在s2对应位置后面的元素;
3. 在s1的这个元素被选中,转移到s1的末尾;
4. 直到s1和s2完全相同,则输出移动的步数。
另外,我觉得很多时候要提前想Testcase;如果在线编程测试时,哪些没有通过的例子能显示出来就好了——就想LeetCode的环境,我觉得难度会降不少。
show the code
```
def moves(sa, sb):
steps = 0
if len(sa)!=len(sb) or set(sa)!=set(sb):
return 0 # impossible
else:
sa = list(sa)
sb = list(sb)
while sa!=sb:
try:
moveC = sb[sb.index(sa[-1])+1]
except IndexError:
moveC = sa[0]
sa.remove(moveC)
sa.append(moveC)
steps += 1
return steps
if __name__ == "__main__":
s1 = 'aac'
s2 = 'caa'
print(moves(s1, s2))
```
查看原帖
点赞 评论
相关推荐
牛客热帖
正在热议
# 25届秋招总结 #
435783次浏览 4427人参与
# 实习,投递多份简历没人回复怎么办 #
2451621次浏览 34828人参与
# 阿里云管培生offer #
118461次浏览 2130人参与
# 地方国企笔面经互助 #
7820次浏览 18人参与
# ai智能作图 #
40366次浏览 485人参与
# 虾皮求职进展汇总 #
106887次浏览 844人参与
# 北方华创开奖 #
106830次浏览 591人参与
# 春招别灰心,我们一人来一句鼓励 #
39907次浏览 506人参与
# 发工资后,你做的第一件事是什么 #
12070次浏览 59人参与
# 机械人春招想让哪家公司来捞你? #
157518次浏览 2267人参与
# 工作中,努力重要还是选择重要? #
35066次浏览 382人参与
# 你投递的公司有几家约面了? #
33107次浏览 188人参与
# 实习想申请秋招offer,能不能argue薪资 #
38998次浏览 314人参与
# 参加完秋招的机械人,还参加春招吗? #
19971次浏览 239人参与
# 非技术岗是怎么找实习的 #
155768次浏览 2120人参与
# 机械求职避坑tips #
24590次浏览 255人参与
# 双非本科求职如何逆袭 #
661029次浏览 7384人参与
# 工作两年想退休了 #
56765次浏览 730人参与
# 实习必须要去大厂吗? #
55316次浏览 957人参与
# 我的实习求职记录 #
6152112次浏览 84179人参与
# 华为工作体验 #
113538次浏览 878人参与
# 25届机械人为了秋招做了哪些准备? #
27121次浏览 368人参与