破密信

提交数: 307, 通过率: 14.66%, 平均分: 20.28

题目描述:

【背景描述】
话说小明十分喜欢当侦探,长大后,小明果然当上了侦探,现在,Ferrari(盗贼名)开始行动,十分棘手……

【问题描述】

Ferrari给同伴发了一封信,被小明截住了,里面有两封信,一封信上有一个数字m,另一封信上有一篇文章,由字母、数字、符号、空格和回车构成,但无人能知其意。一资深的侦探告诉小明,这是一种叫fassional的加密法,规则如下:

把26围成一圈。现在从第一个字母开始报数,报到m的字母出圈,这个字母就相当于原文中的“a”,然后再从下一个字母开始重新报数,报到m的字母出圈,这个字母就相当于原文中的“b”,……直到只剩下一个字母为止。这个字母相当于原文中的“z”。

在原文中大写的翻译文中就大写,小写的翻译文中就小写。

数字、符号、空格和回车原样输出。

请你帮小明翻译这篇文章。

输入格式:

第一行为m
接下来是一篇文章

 

输出格式:

为翻译过后的文章

样例输入:

5
I'm 13 years old!~
Oh^ I have $1 and #1!

(3+2)*7<>3500%*2/3 ?

样例输出:

W'a 13 vyebr ust!~
Uq^ W qexy $1 eit #1!

(3+2)*7<>3500%*2/3 ?

提示:

读完所有行内容的方法是:
string s;
while ( getline(cin,s) ){   //或 getline(cin,s) != NULL
        //对s的处理代码;
}
 
 
【输入输出样例解析】

abcdefghijklmnopqrstuvwxyxz分别用ejotydkqwclsaiufpbrhzxgnvm表示。

【限制】
70%
的数据满足:1<=m<=10^9
100%的数据满足:m<=maxlongint

 
时间限制: 1000ms
空间限制: 128MB

来源: 原创