题解 | #简单密码#
简单密码
https://www.nowcoder.com/practice/7960b5038a2142a18e27e4c733855dac
#include <cctype> #include <iostream> #include <unordered_map> using namespace std; int main() { string str; cin>>str; unordered_map<char, char>mp; mp['a']='2'; mp['b']='2'; mp['c']='2'; mp['d']='3'; mp['e']='3'; mp['f']='3'; mp['g']='4'; mp['h']='4'; mp['i']='4'; mp['j']='5'; mp['k']='5'; mp['l']='5'; mp['m']='6'; mp['n']='6'; mp['o']='6'; mp['p']='7'; mp['q']='7'; mp['r']='7'; mp['s']='7'; mp['t']='8'; mp['u']='8'; mp['v']='8'; mp['w']='9'; mp['x']='9'; mp['y']='9'; mp['z']='9'; for(char &ch:str){ if(ch>='A'&&ch<'Z'){ ch=tolower(ch)+1; }else if(ch=='Z'){ ch='a'; }else if(ch>='a'&&ch<='z'){ ch=mp[ch]; } } cout<<str; } // 64 位输出请用 printf("%lld")