Caesar's Cipher
Practice
4.2 (11 votes)
Algorithms
Approved
Data structures
Easy
Hash maps
Hash tables
Maps
Open
String manipulation
Approved
Problem
62% Success 13173 Attempts 20 Points 1s Time Limit 256MB Memory 1024 KB Max Code

Caesar's Cipher is a very famous encryption technique used in cryptography. It is a type of substitution cipher in which each letter in the plaintext is replaced by a letter some fixed number of positions down the alphabet. For example, with a shift of 3, D would be replaced by G, E would become H, X would become A and so on.

Encryption of a letter X by a shift K can be described mathematically as \(E_{K} ( X ) = ( X + K )\) % \(26\).

Given a plaintext and it's corresponding ciphertext, output the minimum non-negative value of shift that was used to encrypt the plaintext or else output -1 if it is not possible to obtain the given ciphertext from the given plaintext using Caesar's Cipher technique.

Input:

The first line of the input contains Q, denoting the number of queries.

The next Q lines contain two strings S and T consisting of only upper-case letters.

Output:

For each test-case, output a single non-negative integer denoting the minimum value of shift that was used to encrypt the plaintext or else print -1 if the answer doesn't exist.

Constraints:

  • \(1 \le Q \le 5 \)
  • \( 1 \le |S| \le 10^{5}\)
  • \( 1 \le |T| \le 10^{5}\)
  • \( |S| = |T| \)

Please login to use the editor

You need to be logged in to access the code editor

Loading...

Please wait while we load the editor

Loading...
Results
Custom Input
Run your code to see the output
Submissions
Please login to view your submissions
Similar Problems
Points:20
40 votes
Tags:
AlgorithmsApprovedEasyOpen
Points:20
21 votes
Tags:
Ad-HocApprovedEasyMathOpen
Points:20
12 votes
Tags:
Ad-HocEasyString Manipulationapproved