关注
没有参加这次的笔试,因为不敢。
按照上面的题目理解,我也尝试给出一个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))
```
查看原帖
点赞 评论
相关推荐
牛客热帖
更多
正在热议
更多
# 面试被问到不会的问题,你怎么应对? #
18979次浏览 448人参与
# 设计人的面试记录 #
204871次浏览 1629人参与
# 招商银行数字金融训练营 #
105886次浏览 915人参与
# 你见过哪些招聘隐形歧视? #
20432次浏览 176人参与
# 学历VS实习,哪个更重要? #
547次浏览 23人参与
# 你觉得大几开始实习最合适? #
22606次浏览 230人参与
# 厦门银行科技岗值不值得投 #
15091次浏览 352人参与
# uu们,春招你还来吗? #
58442次浏览 572人参与
# 影石Insta360求职进展汇总 #
183822次浏览 1376人参与
# 面试中,你被问过哪些奇葩问题? #
94163次浏览 1117人参与
# 你都用vibe coding做过什么? #
16535次浏览 666人参与
# 虹软科技求职进展汇总 #
16590次浏览 138人参与
# 供应链/物流校招攻略 #
12332次浏览 218人参与
# AI Coding实战技巧 #
11229次浏览 255人参与
# 做完笔试后你收到面试了吗? #
22687次浏览 207人参与
# 机械人还在等华为开奖吗? #
325038次浏览 1599人参与
# 恒生电子笔试 #
19683次浏览 154人参与
# Vibe Coding 会干掉初级岗位吗? #
18185次浏览 206人参与
# 你现在一天AI几次? #
9277次浏览 112人参与
# 面试吐槽bot #
186562次浏览 914人参与
# 如果人生可以debug你会改哪一行? #
8380次浏览 134人参与
# 大厂实习和小厂实习最大的区别是什么? #
36498次浏览 254人参与
查看18道真题和解析