baru003のブログ

baruの雑記兼備忘録

AOJ 0501

・問題リンクData Conversion

・コメント
ゴリ押しというかなんの工夫もなく実装しました.
変換表をMapを使って覚えておき、読み込んだ文字を変換表と比較して行きました.
Javaでchar型を1文字のみの入力として扱う方法が分からなかったのでString型で読み込みそれをchar型に変換できるString#charAtを使っていちいち変換するはめに・・(泣)

・ソース

import java.util.Map;
import java.util.Scanner;
import java.util.TreeMap;

public class P0501 {

	static Scanner sc = new Scanner(System.in);
	static int n = -1;

	public static void solve() {
		Map<Character, Character> convert = new TreeMap<Character, Character>();
		for (int i = 0; i < n; i++) {
			String before = sc.next();
			String after = sc.next();
			convert.put(before.charAt(0), after.charAt(0));
		}
		int inputCnt = sc.nextInt();
		char[] str = new char[inputCnt];
		for (int i = 0; i < inputCnt; i++) {
			String s = sc.next();
			str[i] = s.charAt(0);
		}
		char[] ans = new char[str.length];
		for (int i = 0; i < str.length; i++) {
			if (convert.containsKey(str[i])) {
				ans[i] = convert.get(str[i]);
			} else {
				ans[i] = str[i];
			}
		}
		System.out.println(ans);
	}

	public static void main(String[] args) {
		while (true) {
			n = sc.nextInt();
			if (n == 0) {
				break;
			}
			solve();
		}
	}

}