10:簡單密碼

自為風月馬前卒發表於2017-02-28

10:簡單密碼

總時間限制: 
1000ms
 
記憶體限制: 
65536kB
描述

Julius Caesar曾經使用過一種很簡單的密碼。對於明文中的每個字元,將它用它字母表中後5位對應的字元來代替,這樣就得到了密文。比如字元A用F來代替。如下是密文和明文中字元的對應關係。

密文
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

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

你的任務是對給定的密文進行解密得到明文。

你需要注意的是,密文中出現的字母都是大寫字母。密文中也包括非字母的字元,對這些字元不用進行解碼。

輸入
一行,給出密文,密文不為空,而且其中的字元數不超過200。
輸出
輸出一行,即密文對應的明文。
樣例輸入
NS BFW, JAJSYX TK NRUTWYFSHJ FWJ YMJ WJXZQY TK YWNANFQ HFZXJX
樣例輸出
IN WAR, EVENTS OF IMPORTANCE ARE THE RESULT OF TRIVIAL CAUSES
來源
翻譯自 South Central USA 2002 的試題
 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 using namespace std;
 5 char a[100001];
 6 char ans[100001];
 7 int now=0;
 8 int main()
 9 {
10     gets(a);
11     int l=strlen(a);
12     for(int i=0;i<l;i++)
13     {
14         if(a[i]>=70&&a[i]<=90)a[i]=a[i]-5;
15         else if(a[i]>=65&&a[i]<70)a[i]=a[i]+21;
16     }
17     puts(a);
18     return 0;
19 }

 

相關文章