题解 | #手机键盘#

手机键盘

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

#include <iostream>

using namespace std;

int main() {
    int keyTab[26] = {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};
    string str;
    while (cin >> str) {
        int time = 0;
        for (int i = 0; i < str.size(); i++) { //此处为str.size()
            time += keyTab[str[i] - 'a'];
            if (i != 0 &&
                    str[i] - str[i - 1] == keyTab[str[i] - 'a'] - keyTab[str[i - 1] - 'a']) {
                time += 2;
            }
        }

        cout << time << endl;
    }
}

全部评论

相关推荐

09-01 11:31
门头沟学院 Java
buul:七牛云的吧,感觉想法是好的,但是大家没那么多时间弄他这个啊。。。不知道的还以为他是顶尖大厂呢还搞比赛抢hc,只能说应试者的痛苦考察方是无法理解的,他们只会想一出是一出
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务