恺撒的密码
Description
恺撒时代充满了动荡和危险,恺撒为了保证在战争中传递秘密消息,发明了一种密码。他在所有的信件中将所有的字符按字母顺序向后移动了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
只有字母被替换,而且所有字母都是大写的。
输入:
第一行是一个整数K,表示有多少个测试用例,以后每行一个测试用例。每行为一个字符串(长度不超过1000个字符)。
输出:
每行输出一个测试用例的结果。
Sample Input
3
NS BFW, JAJSYX TK NRUTWYFSHJ FWJ YMJ WJXZQY TK YWNANFQ HFZXJX
N BTZQI WFYMJW GJ KNWXY NS F QNYYQJ NGJWNFS ANQQFLJ YMFS XJHTSI NS WTRJ
IFSLJW PSTBX KZQQ BJQQ YMFY HFJXFW NX RTWJ IFSLJWTZX YMFS MJ
Sample Output
IN WAR, EVENTS OF IMPORTANCE ARE THE RESULT OF TRIVIAL CAUSES
I WOULD RATHER BE FIRST IN A LITTLE IBERIAN VILLAGE THAN SECOND IN ROME
DANGER KNOWS FULL WELL THAT CAESAR IS MORE DANGEROUS THAN HE
#include<iostream>
using namespace std;
char str[1000];
int main()
{
int k;
cin>>k;
while(k--)
{
getchar();
for(int j=0; str[j-1]!='\n';j++)
str[j]=getchar();
int len = strlen(str);
int i = 0;
for( i=0 ; i<len; i++)
{
if('A' <= str[i]&&str[i]<='E')
{
str[i]=(char)(str[i]+21);
}
else if('F'<=str[i]&&str[i]<='Z')
{
str[i]=(char)(str[i]-5);
}
else
str[i]=str[i];
}
for(i = 0;i<len;i++)
cout<<str[i];
}
return 0;
}
分享到:
相关推荐
详细讲述了acm的编程及各种算法知识,书中代码全部用c++实现,对c++泛型编程也有着极大地帮助
【标题】:“C++编程ACM之密码截获” 在这个问题中,“密码截获”是一个典型的算法挑战,常见于国际大学生程序设计竞赛(ACM,International Collegiate Programming Contest)中。ACM比赛旨在锻炼学生的算法设计、...
这是一道比较经典的剪枝题目,如果不仔细考虑到 题目特性,就不能了解到搜索的速度
这个“基于C++实现的ACM竞赛常用模板”是一个集成了ACM比赛常见问题解决方案的代码库,可以帮助参赛者快速理解和解决各种竞赛题目。 首先,模板通常包括基础数据结构和算法的实现,例如: 1. **排序算法**:快速...
《ACM ICPC程序设计与分析(C++实现)》是一本专为参与ACM国际大学生程序设计竞赛(International Collegiate Programming Contest, 简称ICPC)的参赛者及对此领域感兴趣的程序员编写的指导书籍。书中深入探讨了在...
标题 "ACM杭电1002 C++程序" 指向的是一个与ACM国际大学生程序设计竞赛相关的题目,具体是杭州电子科技大学(Hangzhou Dianzi University)在线评测系统上的第1002号问题。这个问题要求用C++编程语言来解决大数相加...
### ACM&C++实用技巧与模板库 #### 一、引言 在计算机科学领域,特别是针对ACM(Association for Computing Machinery)竞赛等编程比赛,掌握高效且简洁的编程技巧至关重要。C++作为这类比赛中最常用的语言之一,...
**基于C++的ACM模板**是用于解决算法竞赛(如国际大学生程序设计竞赛ICPC或ACM/ICPC)中的编程问题的一种高效框架。在这些竞赛中,参赛者需要编写程序来解决各种数学和逻辑问题,速度和准确性是关键。C++语言因其...
acm吃糖果的题目,自己根据提示写的比较简单的代码,欢迎指正
标题中的“poj acm300题 c++源码打包”表明这是一份包含300个在POJ(编程在线判题系统)上已通过的ACM竞赛题目解决方案的压缩文件,语言为C++。ACM,即国际大学生程序设计竞赛(International Collegiate ...
“基于C++实现的ACM竞赛常用模板文件”是一个旨在帮助ACM参赛者快速掌握和应用ACM比赛中常见问题解决方案的代码库。这些模板经过精心设计,能够为参赛者提供一个清晰的框架,使他们能够在短时间内理解并解决各类算法...
标题中的“PTA.zip_ACM编程_C++_VC和PTA的环境_advicevcc_nailsxcl”表明这是一个关于ACM(国际大学生程序设计竞赛)编程训练的资源包,主要针对C++语言,并且讨论了在Visual C++(VC)环境中如何与PTA(Programming...
标题中的“用于GNURadio的DVB-S2ACM块_C++_Python_源码_下载.zip”表明这是一个关于GNURadio的软件包,其中包含了实现DVB-S2(数字视频广播 - 卫星 - 第二代)标准的高级编码模块(Advanced Coding and Modulation, ...
今天,我们将探讨这道题目的C++源代码实现,以及它是如何通过深度优先搜索算法来找到答案的。 首先,我们来了解题目的基本概念。在这个矩形房间中,红色和黑色的方砖构成了一个特定的布局。房间的尺寸由宽度W和高度...
总的来说,这个基于C++的ACM-ICPC模板是参赛者在备赛过程中必不可少的工具,它可以帮助参赛者专注于算法设计,而不需要花费过多精力在代码实现的细节上。通过学习和使用这套模板,选手可以提升自己的编程效率,提高...
ACM模板和一些题目的代码实现c++源码.zipACM模板和一些题目的代码实现c++源码.zipACM模板和一些题目的代码实现c++源码.zipACM模板和一些题目的代码实现c++源码.zipACM模板和一些题目的代码实现c++源码.zipACM模板和...
3. **编写代码**:使用C++实现设计的算法。 4. **测试和调试**:利用样例数据检查代码是否正确,逐步完善直至通过所有测试用例。 5. **优化**:如果时间或空间复杂度较高,可能需要对代码进行优化,以满足ACM竞赛的...
“基于C++实现的ACM竞赛常用模板源代码”这一代码库是专门为ACM竞赛选手量身打造的工具,它集合了ACM竞赛中最常见的问题类型及其解决方案。通过这些模板代码,参赛者可以快速掌握各类问题的解决思路,节省宝贵的编码...
1. 链表:链表是ACM竞赛中常用的动态数据结构,用于实现队列、栈等。C++中的list和forward_list提供了链表操作。 2. 树结构:二叉树、平衡树(如AVL树、红黑树)在解决搜索和排序问题时非常有用。掌握基本的插入、...
《C++ Reference:标准C++库 ACM程序设计 曾宗根》是一本深入解析C++标准库,并结合ACM程序设计实践的专业书籍。C++是一种强大的面向对象编程语言,其标准库是C++编程的核心组成部分,包含了大量的工具、类和函数,...