/* * ACM ICPC - CERC 2011 * * Sample solution: Vigenere Cipher Encryption (vigenere) * Author: Martin Kacer */ import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class vigenere { StringTokenizer st = new StringTokenizer(""); BufferedReader input = new BufferedReader(new InputStreamReader(System.in)); public static void main(String[] args) throws Exception { vigenere instance = new vigenere(); while (instance.run()) {/*repeat*/} } String nextToken() throws Exception { while (!st.hasMoreTokens()) st = new StringTokenizer(input.readLine()); return st.nextToken(); } String sumString(String key, String txt) { StringBuilder sb = new StringBuilder(); for (int i = 0; i < txt.length(); ++i) { char c = (char)(txt.charAt(i) + 1 + key.charAt(i % key.length()) - 'A'); sb.append((c > 'Z') ? (char)(c-26) : c); } return sb.toString(); } boolean run() throws Exception { String s = nextToken(); if ("0".equals(s)) return false; System.out.println(sumString(s, nextToken())); return true; } }