题解 | C++ #简单密码#

简单密码

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

#include <iostream>
using namespace std;

int main() {
    string s;
    cin >> s;
    for(int i = 0; i < s.size(); i++){
        switch(s[i]){
            case 'A' ... 'Y': s[i] += ('a' - 'A') + 1;break;
            case 'Z': s[i] = 'a';break;
            case 'a'... 'c': s[i] = '2';break;
            case 'd'... 'f': s[i] = '3';break;
            case 'g'... 'i': s[i] = '4';break;
            case 'j'... 'l': s[i] = '5';break;
            case 'm'... 'o': s[i] = '6';break;
            case 'p'... 's': s[i] = '7';break;
            case 't'... 'v': s[i] = '8';break;
            case 'w'... 'z': s[i] = '9';break;
            default:break;
        }
    }
    cout << s;
}

看了有些题解,有直接手动算出来密码集,存在另一个字符串中;有利用map建立字典。但是,switch的做法我觉得更像人的思维方式。

全部评论

相关推荐

笑死&nbsp;不是哥们离校了我真要睡街了&nbsp;加上还有几w的贷款&nbsp;不接受我准备去当三和大神
梦想是成为七海千秋:没事,hr这下就有底气了,下次遇到一个不接受的就说,你看,人家这学历都接受了,你凭什么不接受
点赞 评论 收藏
分享
每晚夜里独自颤抖:你cet6就cet6,cet4就cet4,你写个cet证书等是什么意思。专业技能快赶上项目行数,你做的这2个项目哪里能提现你有这么多技能呢
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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