题解 | #简单密码#

简单密码

https://www.nowcoder.com/practice/7960b5038a2142a18e27e4c733855dac

#include <iostream>
#include <vector>
#include <unordered_map>
using namespace std;

int main() {
    unordered_map<char,int>ans;
    ans['a']=2;ans['b']=2;ans['c']=2;
    ans['d']=3;ans['e']=3;ans['f']=3;
    ans['g']=4;ans['h']=4;ans['i']=4;
    ans['j']=5;ans['k']=5;ans['l']=5;
    ans['m']=6;ans['n']=6;ans['o']=6;
    ans['p']=7;ans['q']=7;ans['r']=7;ans['s']=7;
    ans['t']=8;ans['u']=8;ans['v']=8;
    ans['w']=9;ans['x']=9;ans['y']=9;ans['z']=9;
    string s;
    getline(cin,s);
    for(int i=0;i<s.size();i++){
        if(ans.find(s[i])!=ans.end()){
            cout<<ans[s[i]];
        }
        else if(ans.find(s[i])==ans.end()){
            if(isdigit(s[i])){
                cout<<s[i];
            }
            else if(isupper(s[i])){
                char a=tolower(s[i]);
                a=a+1;
                if(a>'z'){
                    a-=26;
                }
                cout<<a;
            }
        }
    }
}

全部评论

相关推荐

昨天 21:00
中山大学 Ruby
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务