資源描述:
《1346 潛伏者 1350 鋪地毯》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、潛伏者【NOIP2009提高組】TimeLimit:10000MS?MemoryLimit:65536KTotalSubmit:14Accepted:7Description R國(guó)和S國(guó)正陷入戰(zhàn)火之中,雙方都互派間諜,潛入對(duì)方內(nèi)部,伺機(jī)行動(dòng)。歷盡艱險(xiǎn)后,潛伏于S國(guó)的R國(guó)間諜小C終于摸清了S國(guó)軍用密碼的編碼規(guī)則: 1、S國(guó)軍方內(nèi)部欲發(fā)送的原信息經(jīng)過(guò)加密后在網(wǎng)絡(luò)上發(fā)送,原信息的內(nèi)容與加密后所得的內(nèi)容均由大寫(xiě)字母‘A’-‘Z’構(gòu)成(無(wú)空格等其他字符)。 2、S國(guó)對(duì)于每個(gè)字母規(guī)定了對(duì)應(yīng)的“密字”
2、。加密的過(guò)程就是將原信息中的所有字母替換為其對(duì)應(yīng)的“密字”?! ?、每個(gè)字母只對(duì)應(yīng)一個(gè)唯一的“密字”,不同的字母對(duì)應(yīng)不同的“密字”?!懊茏帧笨梢院驮帜赶嗤?。例如,若規(guī)定‘A’的密字為‘A’,‘B’的密字為‘C’(其他字母及密字略),則原信息“ABA”被加密為“ACA”?,F(xiàn)在,小C通過(guò)內(nèi)線(xiàn)掌握了S國(guó)網(wǎng)絡(luò)上發(fā)送的一條加密信息及其對(duì)應(yīng)的原信息。小C希望能通過(guò)這條信息,破譯S國(guó)的軍用密碼。小C的破譯過(guò)程是這樣的:掃描原信息,對(duì)于原信息中的字母x(代表任一大寫(xiě)字母),找到其在加密信息中的對(duì)應(yīng)大寫(xiě)字母y,并
3、認(rèn)為在密碼里y是x的密字。如此進(jìn)行下去直到停止于如下的某個(gè)狀態(tài): 1、所有信息掃描完畢,‘A’-‘Z’所有26個(gè)字母在原信息中均出現(xiàn)過(guò)并獲得了相應(yīng)的“密字”?! ?、所有信息掃描完畢,但發(fā)現(xiàn)存在某個(gè)(或某些)字母在原信息中沒(méi)有出現(xiàn)?! ?、掃描中發(fā)現(xiàn)掌握的信息里有明顯的自相矛盾或錯(cuò)誤(違反S國(guó)密碼的編碼規(guī)則)。例如某條信息“XYZ”被翻譯為“ABA”就違反了“不同字母對(duì)應(yīng)不同密字”的規(guī)則。在小C忙得頭昏腦漲之際,R國(guó)司令部又發(fā)來(lái)電報(bào),要求他翻譯另外一條從S國(guó)剛剛截取到的加密信息。現(xiàn)在請(qǐng)你幫助小C:通
4、過(guò)內(nèi)線(xiàn)掌握的信息,嘗試破譯密碼。然后利用破譯的密碼,翻譯電報(bào)中的加密信息。Input 輸入文件名為spy.in,共3行,每行為一個(gè)長(zhǎng)度在1到100之間的字符串。第1行為小C掌握的一條加密信息。第2行為第1行的加密信息所對(duì)應(yīng)的原信息。第3行為R國(guó)司令部要求小C翻譯的加密信息。輸入數(shù)據(jù)保證所有字符串僅由大寫(xiě)字母‘A’-‘Z’構(gòu)成,且第1行長(zhǎng)度與第2行相等。Output 輸出文件spy.out共1行。若破譯密碼停止時(shí)出現(xiàn)2,3兩種情況,請(qǐng)你輸出“Failed”(不含引號(hào),注意首字母大寫(xiě),其它小寫(xiě))。否則
5、請(qǐng)輸出利用密碼翻譯電報(bào)中加密信息后得到的原信息。SampleInputAAABEOWIESampleOutputFailed【輸入輸出樣例1說(shuō)明】 原信息中的字母‘A’和‘B’對(duì)應(yīng)相同的密字,輸出“Failed”。Hint【輸入輸出樣例2】spy.inQWERTYUIOPLKJHGFDSAZXCVBNABCDEFGHIJKLMNOPQRSTUVWXYDSLIEWOspy.outFailed【輸入輸出樣例2說(shuō)明】 字母‘Z’在原信息中沒(méi)有出現(xiàn),輸出“Failed”?!据斎胼敵鰳永?】spy.inMS
6、RTZCJKPFLQYVAWBINXUEDGHOOILSMIJFRCOPPQCEUNYDUMPPYIZSDWAHLNOVFUCERKJXQMGTBPPKOIYKANZWPLLVWMQJFGQYLLFLSOspy.outNOIPSource水題vari,j,n:longint;c:char;s,s1,s2:string;p:boolean;a,b:array['A'..'Z']ofchar;beginreadln(s1);readln(s2);forc:='A'to'Z'doa[c]:='';forc:
7、='A'to'Z'dob[c]:='';p:=true;fori:=1tolength(s1)dobeginif(a[s1[i]]='')and(b[s2[i]]='')thenbegina[s1[i]]:=s2[i];b[s2[i]]:=s1[i];endelseif(a[s1[i]]<>s2[i])or(b[s2[i]]<>s1[i])thenbeginp:=false;break;end;end;ifpthenforc:='A'to'Z'doifa[c]=''thenbeginp:=false;
8、break;end;ifnotpthenwriteln('Failed')elsebeginreadln(s);fori:=1tolength(s)dowrite(a[s[i]]);writeln;end;end.鋪地毯【NOIP2011提高組Day1】TimeLimit:10000MS?MemoryLimit:128000KTotalSubmit:1Accepted:1Description鋪地毯(carpet.cpp/c/pas)【問(wèn)題描述】 為了