60分求解。。。。

P1914 小书童——凯撒密码

F4lc0n @ 2018-08-03 11:25:15

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

int main(int argc, char const *argv[])
{
    int n;
    string pwd;
    cin >> n >> pwd;
    for(int i = 0; pwd[i];i++)
    {
        pwd[i] = (int(pwd[i]) + n > 122) ? 219 - int(pwd[i]) : int(pwd[i]) + n;
        cout << pwd[i];
    }
    return 0;
}

by WYQ祺 @ 2018-08-03 13:27:48

@SuMm3r 我试了一下,z进到a没有敲对 ,我把样例改了一下可以试试:

4

qwe

能看出来,w进4位应该为a,但是这段代码输出结果是d


by WYQ祺 @ 2018-08-03 13:34:22

我试着调了一下,自己改的那个样例过了,但是没交,不介意的话可以看看(贴上主函数部分):

(有什么错的地方一定要给我说啊(顶锅盖逃。。。))

int main(int argc, char const *argv[])
{
    int n;
    string pwd;
    cin >> n >> pwd;
    for(int i = 0; pwd[i];i++)
    {
        pwd[i]=pwd[i]+n;
        pwd[i] = ( pwd[i]> 122) ? pwd[i]-26 : pwd[i];
        cout << pwd[i];
    }
    return 0;
}

by F4lc0n @ 2018-08-04 18:56:53

@WYQ祺


|