CCC '12 J4 - Big Bang Secrets

View as PDF

Submit solution

Points: 3
Time limit: 2.0s
Memory limit: 64M

Problem type
Canadian Computing Competition: 2012 Stage 1, Junior #4

Sheldon and Leonard are physicists who are fixated on the BIG BANG theory. In order to exchange secret insights they have devised a code that encodes UPPERCASE words by shifting their letters forward.

Shifting a letter by S positions means to go forward S letters in the alphabet. For example, shifting B by S = 3 positions gives E. However, sometimes this makes us go past Z, the last letter of the alphabet. Whenever this happens we wrap around, treating A as the letter that follows Z. For example, shifting Z by S = 2 positions gives B.

Sheldon and Leonard's code depends on a parameter K and also varies depending on the position of each letter in the word. For the letter at position P, they use the shift value of S = 3P + K.

For example, here is how ZOOM is encoded when K = 3. The first letter Z has a shift value of S = 3 \times 1 + 3 = 6; it wraps around and becomes the letter F. The second letter, O, has S = 3 \times 2 + 3 = 9 and becomes X. The last two letters become A and B. So Sheldon sends Leonard the secret message: FXAB

Write a program for Leonard that will decode messages sent by Sheldon.

Input Specification

The input will be two lines. The first line will contain the positive integer K (K < 10), which is used to compute the shift value. The second line of input will be the word, which will be a sequence of uppercase characters of length at most 20.

Output Specification

The output will be the decoded word of uppercase letters.

Sample Input 1


Output for Sample Input 1


Sample Input 2


Output for Sample Input 2



  • -3
    Sohban_M  commented on Dec. 5, 2019, 3:39 p.m. edited


  • -1
    Harryg33107  commented on Dec. 4, 2019, 9:15 p.m.

    My submission produced an AC result. But after I tested it with the following input


    It gave the following output:


    How come?

    • 0
      hxxr  commented on Dec. 7, 2019, 5:13 p.m. edited

      It is possible for the ASCII character code after decoding to be less than 39. Simply adding 26 to the result will not always make it into a valid letter—sometimes you will need to add a multiple of 26.

  • -5
    GD_FrostByte  commented on Nov. 17, 2019, 9:51 a.m.

    This comment is hidden due to too much negative feedback. Click here to view it.

  • -5
    NeverDrinkAndDerive1  commented on Jan. 3, 2019, 4:59 p.m.

    This comment is hidden due to too much negative feedback. Click here to view it.

  • 17
    geese  commented on July 28, 2018, 2:19 p.m.