题目背景
某蒟蒻迷上了 “小书童”,有一天登陆时忘记密码了(他没绑定邮箱 or 手机),于是便把问题抛给了神犇你。
题目描述
蒟蒻虽然忘记密码,但他还记得密码是由一个字符串组成。密码是由原文字符串(由不超过 50 个小写字母组成)中每个字母向后移动 nn 位形成的。z
的下一个字母是 a
,如此循环。他现在找到了移动前的原文字符串及 nn,请你求出密码。
输入格式
第一行:nn。第二行:未移动前的一串字母。
输出格式
一行,是此蒟蒻的密码。
输入输出样例
输入 #1复制
1 qwe
输出 #1复制
rxf
说明/提示
字符串长度 ≤50≤50,1≤n≤261≤n≤26。
代码
#include<bits/stdc++.h>
using namespace std;
typedef std::string str;
str s;
int main()
{
//加快输出输入
std::ios::sync_with_stdio(false);
cin.tie(0);cout.tie(0);
int n;
cin>>n;
getline(cin,s);//抵消"\n"
getline(cin,s);//输入s
for(int i=0;i<s.size();i++)
{
//先后移动代码
int wz=s[i]-'a'+1;
wz=(n+wz)%26;
if(wz==0) wz=26;
s[i]='a'-1+wz;
}
cout<<s;
return 0;
}