Nの範囲が記述されていないから、ちょっとダメな問題ではないか…

まあいいや。
map使いたかったけどキーをcahrにしたら闇になるから闇。

実行速度の関係から、あんまりiostream系を使うのはよくないと思います。

#include <iostream>
using namespace std;

int main(){
	while(1){
	
	char m[1003][2];
	int n,mm;
	
	cin >> n;
	
	if(n == 0) break;
	
	for(int i = 0;i < n;i++){
		char t1,t2;
		cin >> t1 >> t2;
		m[i][0] = t1;
		m[i][1] = t2;
		}
	cin >> mm;
	
	for(int i = 0;i < mm;i++){
		
		char tmp;
		cin >> tmp;
		for(int j = 0;j < n;j++){
			if(m[j][0] == tmp){
				cout << m[j][1];
				goto out;
			}
		}
		cout << tmp;	
		out:
		;
		
	}
	cout << endl;
		}
	return 0;	
}