0
尹宗鑫
新手守护
新手守护
1786 密码战
题目描述 Description
在各国谍报人员之间经常进行破译密码的战斗,为了防止其他的人员破译,A国的人员使用这样的密码转化规则: 1. 对于字母字符,将其转换成其后的第3个字母。例如:A--D,a--d,X--A,x--a; 2. 对于非字母字符,保持不变。 我们国家的人员成功的截取了这条密码,请帮助破译密码。
输入描述 Input Description
A国进行加密后的字符串
输出描述 Output Description
加密前的字符串
样例输入 Sample Input
L(2017)oryh(10)Fklqd(01)!
样例输出 Sample Output
I(2017)love(10)China(01)!
数据范围及提示 Data Size & Hint
字符串长度不超过50
http://judge.codingtang.com/problem/1786/
#include<iostream>
using namespace std;
string a;
int main(){
cin>>a;
for(int i=0;i<a.size();i++){
if(a[i]>='A' && a[i]<='z'){
int x=a[i];
x=x-3;
a[i]=x;
}
cout<<a[i];
}
return 0;
}
1
汪子晨
修练者
修练者
字符串 s;
识别空格(cin,s);
for(整型 i=0;i<s.size();i++){
如果(s[i]>='D'&&s[i]<='Z' || s[i]>='d'&&s[i]<='z'){
s[i]减等于3;
}那么(s[i]>='A'&&s[i]<='C' || s[i]>='a'&&s[i]<='c'){
s[i]加等于23;
}
}
输出<<s;
AC100求采纳
0
0
0
0
0
0
0
0
0
0
0
0
0
黄馨琦
初级守护
初级守护
特判:
- for(int i=0;i<s.size();i++){
- if(s[i]>='d'&&s[i]<='z'||s[i]>='D'&&s[i]<='Z'){
- s[i]-=3;
- }
- 再判断:
- else if(s[i]>='a'&&s[i]<='c'||s[i]>='A'&&s[i]<='c'){
- s[i]+='x'-'a';
- }
- }
- 最后输出s
0