题解 | #九宫格键盘模拟#

手机键盘

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

//key数组记录每个字母在各自格中的花费
//如果两个字母在同一格中,他们的花费差应该和字母顺序差一样
#include"iostream" 
#include"string"
using namespace std;
int main(){
    int key[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 input="";
    while(cin>>input)
    {   
        int count=key[input[0]-'a'];
        for(int i=1;i<input.size();i++)
        {
            count+=key[input[i]-'a'];
            if(key[input[i]-'a']-key[input[i-1]-'a']==input[i]-input[i-1])
            {
                count+=2;
            }
        }
        cout<<count<<endl;
    }
    return 0;
    
}
全部评论

相关推荐

搞机墨镜猫:参考一下其他人简历吧, 把项目放最上面,没有项目就展开写实习,实习项目具体做了啥,现在很空 奖项写含金量高的,还有校园经历也是,不是运营岗基本上可以都删了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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