PROBLEM LINK:
Author: Setter’s name
Tester: Tester’s name
Editorialist: Editorialist’s name
DIFFICULTY:
cakewalk .
PROBLEM:
Given T test case. For each test case, you are given a String S so you need to convert that given String into secure String by Encryption. There is a way to encrypt the message by shifting the alphabets by 3 alphabets in a circular manner of String S. Where S contains capital alphabets.
EXPLANATION:
So after reading this problem, some people will think that what if we just add 3 into ASCII value so what will be the character for x,y,z let me clear that its mention above that you can shift the alphabets by 3 in Circular manner.
There is a simple approach used by me that we can get ASCII of each character. Hence it contains a capital letter we subtract 65. So the character is between(0-25). Suppose the character is x so calculate x=(x+3) % 26 is a new character we need to place, hence it is between 0-25 we add 65 to get a character in the upper letter. And there is one important condition don't forget to skip ' ' (space) character.
SOLUTIONS:
Setter's Solution
import java.io.*;
class NXS {
public static void main (String[] args)throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int test = Integer.parseInt(br.readLine());
while(test-->0){
String s= br.readLine();
int n=s.length();
String ans="";
for(int i =0 ; i<n ;i++){
if(s.charAt(i)==' '){
ans+=' ';
continue;
}
int x = s.charAt(i)-65;
x=(x+3)%26;
ans+=(char)(x+65);
}
System.out.println(ans);
}
}
}
Feel free to Share your approach, if you want to. (even if its same) . Suggestions are welcomed as always had been.