题解 | #凯撒密码#

凯撒密码

http://www.nowcoder.com/practice/38dc0834910b4cb9b29008ee3ebe42ce

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

string decode(string str, int d) {
    // write code here
    string res = "";
    vector<char> charVec;
    for (int i = 48; i <= 57; i++) {
        charVec.push_back(char(i));
    }

    for (int i = 65; i <= 90; i++) {
        charVec.push_back(char(i));
    }

    for (int i = 97; i <= 122; i++) {
        charVec.push_back(char(i));
    }
    for (int i = 0; i < str.size(); i++) {
        if (str[i] <= '9'&&str[i] >= '0') {
            int num = str[i] - 48 - d;
            if (num < 0) {
                num = charVec.size() + num;
            }
            res += charVec[num];
        }
        else if (str[i] >= 'A'&&str[i] <= 'Z') {
            int num = str[i] - 65+10 - d;
            if (num < 0) {
                num = charVec.size() + num;
            }
            res += charVec[num];
        }else if (str[i] >= 'a'&&str[i] <= 'z') {
            int num = str[i] - 97+10+26 - d;
            if (num < 0) {
                num = charVec.size() + num;
            }
            res += charVec[num];
        }
    }
    return res;
}

int main() {
    string res = decode("pqyeqfgt", 2);
    cout << res << endl;
}
全部评论

相关推荐

zhch7:建议9✌️把学历加黑加粗,如果实在offer可能是觉得佬不会去
投了多少份简历才上岸
点赞 评论 收藏
分享
06-28 22:48
已编辑
广东金融学院 Java
小浪_Coding:学院本+这俩项目不是buff叠满了嘛
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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