首页 > 代码库 > ACMUniversity

ACMUniversity

描述

 

在大学里,很多单词都是一词多义,偶尔在文章里还要用引申义。这困扰Redraiment很长的时间。

他开始搜集那些单词的所有意义。他发现了一些规律,例如

“a”能用“e”来代替, “c”能用“f”来代替……

现在他给出了字母的替换规则,如下所示,A被E替换,B被C替换,依次类推。

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

E C F A J K L B D G H I V W Z Y M N O P Q R S T U X

a b c d e f g h i j k l m n o p q r s t u v w x y z

e r w q t y g h b n u i o p s j k d l f a z x c v m

 

输入

 

本题包括多组测试数据。
每组测试数据为一行:为仅由字母和空格组成的字符串(空格不变),长度不超过1000个字符。
输入以单行“#”结束。

 

输出

 

对应每组测试数据,替换后输出它的引申义。

 

样例输入

Ilttabaje zaujljg
#

样例输出

 Different meaning

AC code:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
int main()
{
  char up[26] ={‘E‘,‘C‘,‘F‘,‘A‘,‘J‘,‘K‘,‘L‘,‘B‘,‘D‘,‘G‘,‘H‘,‘I‘,‘V‘,
   ‘W‘,‘Z‘,‘Y‘,‘M‘,‘N‘,‘O‘,‘P‘,‘Q‘,‘R‘,‘S‘,‘T‘,‘U‘,‘X‘};
  char low[26] ={‘e‘,‘r‘,‘w‘,‘q‘,‘t‘,‘y‘,‘g‘, ‘h‘, ‘b‘, ‘n‘, ‘u‘, ‘i‘,
   ‘o‘, ‘p‘, ‘s‘, ‘j‘, ‘k‘, ‘d‘, ‘l‘, ‘f‘, ‘a‘, ‘z‘, ‘x‘, ‘c‘, ‘v‘, ‘m‘};
  char input[1005];
   while(gets(input),input[0]!=‘#‘){
        int len = strlen(input);
      for(int i=0; i<len; i++){
          if(input[i]>=‘A‘ && input[i]<=‘Z‘){
              input[i] = up[input[i]-‘A‘];
          }
          if(input[i]>=‘a‘ && input[i]<=‘z‘){
             input[i] = low[input[i]-‘a‘];
          }
       }
       printf("%s\n",&input);

  }
 return 0;
}

  

ACMUniversity