#P1050. 6.5 字符操作

6.5 字符操作

题目描述

有一篇加密后的文章,由三行组成。

第一行是以空格分割的两个字符串

第二、三行是由 大小写字母数字空格以及其它字符 构成的文章,称为密文正文

请编写程序,使该程序能根据输入输出符合输出要求的内容。

请仔细阅读输出要求。

输入格式

符合要求的文章,可参见样例。

输出格式

Ⅰ.第一行:分别统计该文章中三行总共英文大写字母小写字母数字空格以及其它字符的个数。并按顺序输出,输出的数字之间以空格分割。

 

Ⅱ.第二行:将第一行的两个字符串进行比较(注:此比较规则不同于strcmp函数),输出比较后的值,称此值为$key$。

     比较规则:现有两个字符串s1和s2进行比较

             ①若s1>s2,输出一个正数;若s1=s2,输出0;若s1<s2,输出一个负数。

             ②输出的正数或者负数的绝对值应是相比较的两个字符串相应字符的ASCII码的差值之和

                例如“$A$”与“$C$”相比,由于“A” < “C”,应该输出负数,因“A”与“C”的ASCII码差值为2,故应输出"$-2$"。

                当"$AA$"与"$CC$"相比时,应输出 -2 与 -2 的和即"$-4$"。

                同理:“$And$”和“$Aid$”比较,根据第二个字符比较的结果,"n"比"i"大5,因此输出"$5$"。

                 当"$And$"和"$Cid$"相比较时,应输出 -2 与 5 的和即"$3$".

            ③当两个字符串不等长时,按短的计算,即如"$AndABCDEF$"与"$Cid$"相比较时,结果仍然为"$3$"。

 

Ⅲ.第三、四行:将密文正文进行解密,按行输出解密后的文章。

     解密规则:

                    ①将密文正文的除英文大写字母空格以外的字符删除。

                    ②将密文正文的所有英文大写字母字母表顺序移动$key$个位置。

                        例如:若$key=2$,则字符$AZ$应该解密为$CB$ ; 若$key=-2$,则字符$AZ$应该解密为$YX$

AAAAA ZZZZZ
X F T A
XFTA
18 0 0 4 0
-125
C K Y F
CKYF

提示