1 条题解

  • 0
    @ 2025-4-12 21:50:59

    C :

    #include<stdio.h>
    #include<string.h>
    #include<math.h>
    int main()
    {
      int n,i,j,k,len;
      char  a[105],b[205],c[105],d[20]="ENDOFINPUT";
      for(i=0;;i++)
      {
    	  len=0;
    	  gets(a);
    	  if(strcmp(a,d)==0)  return 0;
    	  gets(b);
    	  len=strlen(b);
    	  gets(c);
    	  for(j=0;j<len;j++)
    	 { if(b[j]>='A'&&b[j]<='E') b[j]=b[j]+21;
    	  else if(b[j]>='F'&&b[j]<='Z')  b[j]=b[j]-5;}
    	puts(b);
    	
      }
      return 0;
    
    
    }
    

    C++ :

    #include<cstdio>
    #include<cstdlib>
    #include<cstring>
    using namespace std;
    const int maxn=200+5;
    char str[maxn];
    char a[maxn],b[maxn];
    
    int main()
    {
        while(gets(a))
        {
            if(strcmp(a,"ENDOFINPUT")==0)
             break;
            else if(strcmp(a,"START")==0)
            {
                gets(str);
                gets(b);
                int len=strlen(str);
                for(int i=0;i<len;i++)
                if(str[i]>='F'&&str[i]<='Z')
                str[i]=str[i]-5;
                else if(str[i]<='E'&&str[i]>='A')
                str[i]='Z'+(str[i]-'A')-4;
            }
            printf("%s\n",str);
        }
        return 0;
    }
    

    Java :

    import java.util.Scanner;
    
    public class Main {
    	public static void main(String args[]) throws Exception {
    		Scanner sc = new Scanner(System.in);
    		String startFlag = "";
    		String endFlag = "";
    		int len = 0;
    		char[] array;
    		while (sc.hasNext()) {
    			startFlag = sc.nextLine();
    			if ("START".equals(startFlag)) {
    				array = sc.nextLine().toCharArray();
    				len = array.length;
    				for (int i = 0; i < len; i++) {
    					if (array[i]>='A' && array[i] <= 'E') {
    						array[i] = (char) (array[i] + 'v' - 'a');
    					}else if (array[i]>='F' && array[i] <= 'Z') {
    						array[i] = (char) (array[i] - 5);
    					}
    					System.out.print(array[i]);
    				}
    				System.out.println();
    				endFlag = sc.nextLine();
    			} else if ("ENDOFINPUT".equals(startFlag)) {
    				break;
    			}
    		}
    	}
    }
    
    • 1

    信息

    ID
    1922
    时间
    1000ms
    内存
    32MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者