Problem:
Score : 200 points

Problem Statement

We have a string S consisting of uppercase English letters. Additionally, an integer N will be given.

Shift each character of S by N in alphabetical order (see below), and print the resulting string.

We assume that A follows Z. For example, shifting A by 2 results in C (A \to B \to C), and shifting Y by 3 results in B (Y \to Z \to A \to B).

Constraints

0 \leq N \leq 26

1 \leq |S| \leq 10^4

S consists of uppercase English letters.

Input

Input is given from Standard Input in the following format:

N
S

Output

Print the string resulting from shifting each character of S by N in alphabetical order.

Sample Input 1

2
ABCXYZ

Sample Output 1

CDEZAB

Note that A follows Z.

Sample Input 2

0
ABCXYZ

Sample Output 2

ABCXYZ

Sample Input 3

13
ABCDEFGHIJKLMNOPQRSTUVWXYZ

Sample Output 3

NOPQRSTUVWXYZABCDEFGHIJKLM

Solution in C (GCC 5.4.1) (judge verdict: Wrong Answer)

#include<stdio.h>
int main()
{
    char ch[10000],m,n;
    int i,j,k,p,q,r,l;
    scanf("%d",&k);
   // printf("%d",'Z');
   scanf("%s",&ch);
     //gets(ch);
    for(i=0;ch[i]!='\0';i++)
    {
         p=(int)ch[i];
         p=p+k;
        //m=ch[i]+k;
         if(p>65 && p<=90)
         {
            m=(char)p;
            printf("%c",m);
         }
        //printf("%c",ch[i]);
        else if(p>90)
        {
            q=p-90;
            r=q+65;
            m=(char)r;
            printf("%c",m);
        }
   }
   printf("\n");
   return 0;
}