@@ -0,0 +1,1216 @@
+import java.util.Scanner;%0A%0Apublic class ReverseRot %7B%0A    public static char get_next(char c, int n) %7B%0A        while (n-- %3E 0) %7B%0A            switch (c) %7B%0A                case 'Z':%0A                    c = '_';%0A                    break;%0A                case '_':%0A                    c = '.';%0A                    break;%0A                case '.':%0A                    c = 'A';%0A                    break;%0A                default:%0A                    c = (char)(c + 1);%0A                    break;%0A            %7D%0A        %7D%0A        return c;%0A    %7D%0A%0A    public static String reverse_rot(String input, int n) %7B%0A        int length = input.length();%0A        char%5B%5D char_array = input.toCharArray();%0A        for (int i = length - 1; i %3E= 0; i--) %7B%0A            char c = input.charAt(i);%0A            char_array%5Blength - i - 1%5D = get_next(c, n);%0A        %7D%0A        return new String(char_array);%0A    %7D%0A%0A    public static void main( String%5B%5D args ) %7B%0A        Scanner stdin = new Scanner(System.in);%0A        while (true) %7B%0A            int n = stdin.nextInt();%0A            if (n == 0) %7B%0A                break;%0A            %7D%0A            String input = stdin.next();%0A            System.out.println(reverse_rot(input, n));%0A        %7D%0A    %7D%0A%7D%0A

Add ReverseRot solution