1. 程式人生 > >PAT乙級(Basic Level)練習題 最難的問題

PAT乙級(Basic Level)練習題 最難的問題

最難的問題

時間限制 1000 ms 記憶體限制 32768 KB 程式碼長度限制 100 KB 判斷程式 Standard (來自 小小)

題目描述

NowCoder生活在充滿危險和陰謀的年代。為了生存,他首次發明了密碼,用於軍隊的訊息傳遞。假設你是軍團中的一名軍官,需要把傳送來的訊息破譯出來、並提
供給你的將軍。

訊息加密的辦法是:對訊息原文中的每個字母,分別用該字母之後的第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

輸入描述:

輸入包括多組資料,每組資料一行,為收到的密文。

密文僅有空格和大寫字母組成。


輸出描述:

對應每一組資料,輸出解密後的明文。

輸入例子:

HELLO WORLD
SNHJ

輸出例子:

CZGGJ RJMGY

NICE

#include <cstdio>
#include <cstring>
const int maxn=1e5+10;
char s[maxn];
char s1[]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char s2[]="VWXYZABCDEFGHIJKLMNOPQRSTU";

int main(){
    while(gets(s)){
        int len=strlen(s);
        for(int i=0;i<len;i++){
            int ok=0;
            for(int j=0;j<26;j++){
                if(s[i]==s1[j]){printf("%c",s2[j]);ok=1;break;}
            }
            if(!ok) printf("%c",s[i]);
        }
        printf("\n");
    }
    return 0;
}


相關推薦

PAT乙級(Basic Level)練習題 的問題

最難的問題 時間限制 1000 ms 記憶體限制 32768 KB 程式碼長度限制 100 KB 判斷程式 Standard (來自 小小) 題目描述 NowCoder生活在充滿危險和陰謀

PAT乙級(Basic Level)練習題 一的個數

題目描述 NowCoder總是力爭上游,凡事都要拿第一,所以他對“1”這個數情有獨鍾。愛屋及烏,他也很喜歡包含1的數,例如10、11、12……。不僅如此,他同樣喜歡任意進制中包含1的數。當然,其中包含1的個數越多他越喜歡。你能幫他統計一下某個數在特定的進位制下1

PAT乙級(Basic Level)練習題 >客似雲來

題目描述 NowCoder開了一家早餐店,這家店的客人都有個奇怪的癖好:他們只要來這家店吃過一次早餐,就會每天都過來;並且,所有人在這家店吃了兩天早餐後,接下來每天都會帶一位新朋友一起來品嚐。 於是,這家店的客人從最初一個人發展成浩浩蕩蕩成百上千人:1、1、

PAT乙級(Basic Level)練習題 >蜜蜂尋路

題目描述 nowcoder利用業餘時間養了一窩蜜蜂,因為空間比較小,蜂房只有兩排,如下圖所示: 如你所見,蜜蜂的蜂房是正六邊形,假設蜜蜂只會從左往右爬,即從1號蜂房能爬到2號和3號;從6號蜂房能爬到7號和8號…… 現給出兩個蜂房的編號a和b,要求計算蜂

PAT乙級(Basic Level)練習題 >童年生活二三事

題目描述 NowCoder小時候走路喜歡蹦蹦跳跳,他最喜歡在樓梯上跳來跳去。 但年幼的他一次只能走上一階或者一下子蹦上兩階。 現在一共有N階臺階,請你計算一下NowCoder從第0階到第N階共有幾種走法。 輸入描述: 輸入包括多組資料。每組資料包括一個

PAT乙級(Basic Level)真題訓練

寫在前面:PAT冬季賽馬上就要開始了!​​這一次先報一個乙級衝鴨!我感Jio乙級裡面還是有蠻多水題的,也有些題雖然看上去是水題,但是真正用程式碼實現起來的話會卡你那麼一下,比如第5題數素數真的神打臉。 天上不會掉餡餅的,好好學習,努力奮鬥才能夢想成真。 1. D進位制的A + B(20) 題目描述:

PAT乙級(Basic Level)真題 >科學計數法

題目描述 科學計數法是科學家用來表示很大或很小的數字的一種方便的方法,其滿足正則表示式[+-][1-9]”.”[0-9]+E[+-][0-9]+,即數字的整數部分 只有1位,小數部分至少有1位,該數字及其指數部分的正負號即使對正數也必定明確給出。 現以科學

PAT乙級(Basic Level)真題1002

題目描述 給定一系列正整數,請按要求對數字進行分類,並輸出以下5個數字: A1 = 能被5整除的數字中所有偶數的和; A2 = 將被5除後餘1的數字按給出順序進行交錯求和,即計算n1-n2+n3-n4…; A3 = 被5除後餘2的數字的個數; A4 =

PAT乙級(Basic Level)真題 >程式執行時間

題目描述 要獲得一個C語言程式的執行時間,常用的方法是呼叫標頭檔案time.h,其中提供了clock()函式,可以捕捉從程式開始執行到clock()被呼叫時所 耗費的時間。這個時間單位是clock tick,即“時鐘打點”。同時還有一個常數CLK_TCK,給

PAT乙級(Basic Level)真題-1014 科學計數法 (20)

科學計數法 (20)時間限制 1000 ms 記憶體限制 32768 KB 程式碼長度限制 100 KB 判斷程式 Standard (來自 小小)題目描述科學計數法是科學家用來表示很大或很小的數字的一

PAT乙級(Basic Level)真題 >舊鍵盤

題目描述 舊鍵盤上壞了幾個鍵,於是在敲一段文字的時候,對應的字元就不會出現。現在給出應該輸入的一段文字、以及實際被輸入的文字,請你列出 肯定壞掉的那些鍵。 輸入描述: 輸入在2行中分別給出應該輸入的文字、以及實際被輸入的文字。每段文字是不超過80個字元的

PAT 乙級(Basic Level)】福爾摩斯的約會

唉,原先不知道怎麼操作字串,找到了一個答案。結果6個測試點中有3個錯誤,測了好久還是找不到錯誤在哪,結果又百度到一份答案,居然通過了,對比了半天還是不知道錯誤在哪裡,頭暈,先存起來,下次再找,這個題目做了一天快到,噁心死了。我果然很水。 錯誤答案原始碼: import

PAT 乙級(Basic Level)】德才論

呃,這次好尷尬,我發現自己對Java還不是一般的不瞭解。一個題目,暴露了好多問題。出題者的意圖基本沒get到,連內部類都是排序的時候才發現的。 一、難點   排序要求是先按總分從高到低排,如果總分相同則對比德分,按德分從高到低往下排,若德分也相同,則按准考證號大小從小到大往

PAT乙級(Basic Level)真題 >挖掘機技術哪家強

題目描述 為了用事實說明挖掘機技術到底哪家強,PAT組織了一場挖掘機技能大賽。現請你根據比賽結果統計出技術最強的那個學校。 輸入描述: 輸入在第1行給出不超過105的正整數N,即參賽人數。隨後N行,每行給出一位參賽者的資訊和成績,包括其所代表的學校的編號(

PAT乙級(Basic Level)真題-1001 A+B和C (15)

A+B和C (15)時間限制 1000 ms 記憶體限制 32768 KB 程式碼長度限制 100 KB 判斷程式 Standard (來自 小小)題目描述給定區間[-2的31次方, 2的31次方]內的

乙級(Basic Level) 1013 組個小數

cin c++ iostream int 描述 != spl using pri 題目描述 給定數字0-9各若幹個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數盡可能小(註意0不能做首位)。例如:給定兩個0,兩個1,三個5,一個8,我們得到的最小的數

乙級(Basic Level) 1006

can 利用 div 2個 spl 計算 eve 乙級 clu 題目描述 正整數A的“DA(為1位整數)部分”定義為由A中所有DA組成的新整數PA。例如:給定A = 3862767,DA = 6,則A的“6部分”PA是66,因為A中有2個6。 現給定A、DA、B、DB,請

乙級(Basic Level) 1007

空格 情況下 [1] 描述 tro pan cin clu 輸入 題目描述 本題要求計算A/B,其中A是不超過1000位的正整數,B是1位正整數。你需要輸出商數Q和余數R,使得A = B * Q + R成立。 輸入描述: 輸入在1行中依次給出A和B,中間以1空格分隔。 輸出

乙級(Basic Level) 1009 數字黑洞

相等 input basic 沒有 題目 true 區間 註意 apr 題目描述 給定任一個各位數字不完全相同的4位正整數,如果我們先把4個數字按非遞增排序,再按非遞減排序,然後用第1個數字減第2個數字,將得到 一個新的數字。一直重復這樣做,我們很快會停在有“數字黑洞”之稱

乙級(Basic Level) 1012 D進制的A+B

ret sca input spl strong 描述 例子 can %d 題目描述 輸入兩個非負10進制整數A和B(<=230-1),輸出A+B的D (1 < D <= 10)進制數。 輸入描述: 輸入在一行中依次給出3個整數A、B和D。 輸出描述: 輸