题解 | #手机键盘#

手机键盘

https://www.nowcoder.com/practice/20082c12f1ec43b29cd27c805cd476cd

def keyborard(s):
    arr = [1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,4,1,2,3,1,2,3,4]
    group = [1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,6,7,7,7,8,8,8,8]
    for i in range(9, 100):
        group.append(i)
    pre = '{'
    sum=0
    #print(chr(ord('z')+1))
    for i in s:
        if group[ord(i)-ord('a')] == group[ord(pre)-ord('a')]:
            sum+=2
        
        sum+=arr[ord(i)-ord('a')]
        pre = i
    print(sum)

while True:
    try:
        s = input()
        keyborard(s)
    except:
        break
    

全部评论

相关推荐

点赞 评论 收藏
分享
Java抽象带篮子:前5%不保研?觉得自己做题能力强的话也可以考虑考研。本科就业的话我能给你点建议. 走java的话就做项目背八股刷算法找实习啊,入门可以看看我的苍穹外卖话术,里面还写了怎么描述项目,还为了提高含金量额外增加了很多技术亮点呢。另外我这边还有个7000多字的轮子项目话术,可以狠狠的速成,*****。详细的话术能帮你快速速成,这样你就有了很多试错的时间。具体背什么八股我都帮你整理好了,可以去看看我的八股专栏,这个比较详细,如果你觉得内容有点多记忆负担比较大的话,我还在更新最常问八股整理贴,是不是很贴心?[偷笑R]
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务