题目描述
Time Limit: 1000 ms
Memory Limit: 256 mb编写加密程序,加密规则为:将所有字母转化为该字母后的第三个字母,即A->D、B->E、C->F、……、Y->B、Z->C。小写字母同上,其他字符不做转化。输入任意字符串,输出加密后的结果。
例如:输入"I love 007",输出"L oryh 007"
输入描述:
1输入一行字符串,长度小于100。
输出描述:
1输出加密之后的结果。
输入样例:
1I love 007
输出样例:
1L oryh 007
1#include<iostream>
2#include<string>
3using namespace std;
4int main(){
5 string s;
6 getline(cin,s);
7 for(int i=0;i<s.size();i++){
8 if('A'<=s[i]&&s[i]<='Z'){
9 s[i]+=3;
10 if(s[i]>'Z'){
11 s[i]-=26;
12 }
13 }
14 if('a'<=s[i]&&s[i]<='z'){
15 s[i]+=3;
16 if(s[i]>'z'){
17 s[i]-=26;
18 }
19 }
20 }
21 cout<<s;
22 return 0;
23}
题目描述
Time Limit: 1000 ms
Memory Limit: 256 mb输入一个字符串,将其中的数字字符移动到非数字字符之后,并保持数字字符和非数字字符输入时的顺序。例如:输入字符串“ab4f35gr#a6”,输出为“abfgr#a4356”。
输入描述:
1输入一行字符串,长度小于100。
输出描述:
1输出结果。
输入样例:
1ab4f35gr#a6
输出样例:
1abfgr#a4356
1#include<iostream>
2#include<string>
3using namespace std;
4int main(){
5 string s,s1,s2;
6 cin>>s;
7 for(int i=0;i<s.size();i++){
8 if('0'<=s[i]&&s[i]<='9'){
9 s1+=s[i];
10 }else{
11 s2+=s[i];
12 }
13 }
14 cout<<s2+s1<<endl;
15 return 0;
16}
题目描述
Time Limit: 1000 ms
Memory Limit: 256 mb输入一行字符串,计算其中A-Z大写字母出现的次数
输入描述:
1案例可能有多组,每个案例输入为一行字符串。
输出描述:
1对每个案例按A-Z的顺序输出其中大写字母出现的次数。
输入样例:
1DFJEIWFNQLEF0395823048+_+JDLSFJDLSJFKK
输出样例:
1A:0
2B:0
3C:0
4D:3
5E:2
6F:5
7G:0
8H:0
9I:1
10J:4
11K:2
12L:3
13M:0
14N:1
15O:0
16P:0
17Q:1
18R:0
19S:2
20T:0
21U:0
22V:0
23W:1
24X:0
25Y:0
26Z:0
1#include<iostream>
2#include<string>
3#include<array>
4using namespace std;
5
6int main(){
7 string s;
8 while(cin>>s){
9 array<int,27> res={0};
10 for(int i=0;i<s.size();i++){
11 if(s[i]>='A'&&s[i]<='Z'){
12 res[s[i]-'A'+1]++;
13 }
14 }
15 for(int i=1;i<=26;i++){
16 cout<<(char)('A'+i-1)<<":"<<res[i]<<endl;
17 }
18 }
19 return 0;
20}
题目描述
Time Limit: 1000 ms
Memory Limit: 256 mb对一个字符串中的所有单词,如果单词的首字母不是大写字母,则把单词的首字母变成大写字母。 在字符串中,单词之间通过空白符分隔,空白符包括:空格(’ ‘)、制表符(’\t’)、回车符(’\r’)、换行符(’\n’)。
输入描述:
1输入一行:待处理的字符串(长度小于100)。
输出描述:
1可能有多组测试数据,对于每组数据,
2输出一行:转换后的字符串。
输入样例:
1if so, you already have a google account. you can sign in on the right.
输出样例:
1If So, You Already Have A Google Account. You Can Sign In On The Right.
1#include<iostream>
2#include<string>
3using namespace std;
4int main(){
5 string s;
6 while(getline(cin,s)){
7 for(int i=0;i<s.size();i++){
8 if(i==0){
9 if(s[i]>='a'&&s[i]<='z'){
10 s[i]+='A'-'a';
11 }
12 }else if(s[i-1]==' '||s[i-1]=='\t'||s[i-1]=='\r'||s[i-1]=='\n'){
13 if(s[i]>='a'&&s[i]<='z'){
14 s[i]+='A'-'a';
15 }
16 }
17 }
18 cout<<s<<endl;
19 }
20 return 0;
21}
题目描述
Time Limit: 1000 ms
Memory Limit: 256 mb编一个程序,读入用户输入的,以“.”结尾的一行文字,统计一共有多少个单词,并分别输出每个单词含有多少个字符。 (凡是以一个或多个空格隔开的部分就为一个单词)
输入描述:
1输入包括1行字符串,以“.”结束,字符串中包含多个单词,单词之间以一个或多个空格隔开。
输出描述:
1可能有多组测试数据,对于每组数据,
2输出字符串中每个单词包含的字母的个数。
输入样例:
1hello how are you.
输出样例:
15 3 3 3
1#include<iostream>
2#include<string>
3#include<vector>
4#include<sstream>
5using namespace std;
6int main(){
7 string s;
8 while(getline(cin,s,'.')){
9 istringstream iss(s);
10 string token;
11 vector<string> tokens;
12 while(iss>>token){
13 tokens.push_back(token);
14 }
15 for(auto it=tokens.begin();it!=tokens.end();it++){
16 cout<<(*it).size()<<" ";
17 }
18 }
19 return 0;
20}
题目描述
Time Limit: 1000 ms
Memory Limit: 256 mb给你一个字符串S,要求你将字符串中出现的所有"gzu"(不区分大小写)子串删除,输出删除之后的S。
就是说出现“Gzu”、“GZU”、“GZu”、“gzU"都可以删除。
输入描述:
1输入一行字符串S,长度不超过100。
输出描述:
1输出进行删除操作之后的S。
输入样例:
1GzzGzukkgzUuu
输出样例:
1Gzzkkuu
1#include<iostream>
2#include<string>
3using namespace std;
4int main(){
5 string s;
6 cin>>s;
7 for(int i=0;i<s.size()-2;i++){
8 if((s[i]=='g'||s[i]=='G')&&(s[i+1]=='Z'||s[i+1]=='z')&&(s[i+2]=='U'||s[i+2]=='u')){
9 s.erase(i,3);
10 }
11 }
12 cout<<s;
13 return 0;
14}