2 条题解

  • 0
    @ 2025-3-15 15:35:23
    using namespace std;
    string s;
    int main(){
    	cin>>s;
    	for(int i=0; i<s.size(); i++){
    	    if(s[i]>='A'&&s[i]<='Z') s[i]+=32;
    	    else if(s[i]>='a'&&s[i]<='z')s[i]-=32;
    	}
    	for(int i=0; i<s.size(); i++){
    		if(s[i]>='A'&&s[i]<='Z') {
    			if(s[i]+3<='Z') s[i]=s[i]+3;
    			else s[i]=s[i]+3-26;
    		}
    		if(s[i]>='a'&&s[i]<='z'){
    			if(s[i]+3<='z') s[i]=s[i]+3;
    			else s[i]=s[i]+3-26;
    		}
    	}
    	for(int i=s.size()-1; i>=0; i--) cout<<s[i];
    	return 0;
    }
    
    
    • 0
      @ 2025-3-3 16:09:24
      #include<cstdio>
      #include<cstring>
      using namespace std; 
      char s[10010];
      int main()
      {
      	int  i,n,t;
      	cin>>s;
      	n=strlen(s);
      	for(i=0;i<n;i++)
      	{
      		if(s[i]>='a'&&s[i]<='z')//大小写分别判断此为小写
      		{
      			t=s[i]; t+=3;      //向右移动3个位子恢复原文
      			if(t>122) t-=26;   //若为x,y,z 就恢复为a,b,c,
      			t-=32; s[i]=t;     //将小写转换为大写 
      		 } 
      		 else if(s[i]>='A'&&s[i]<='Z')//大小写分别判断此为大写
      		{
      			t=s[i]; t+=3;      //向右移动3个位子恢复原文
      			if(t>90) t-=26;    //若为X,Y,Z 就恢复为A,B,C
      			t+=32; s[i]=t;     //将大写转换为小写 
      	}
      	}
      	for(i=n-1;i>=0;i--) cout<<s[i]; 
      	return 0;
      }
      
      
      • 1

      信息

      ID
      1302
      时间
      1000ms
      内存
      128MiB
      难度
      4
      标签
      (无)
      递交数
      37
      已通过
      18
      上传者