题目
- 题目大意就是:通过存取一开始给予的字典,翻译下列的语句
- 样例输入:
4
I = mo
love = amo
icecream = gelatooo
banana = banana
2
3
I love banana
3
I love icecream
- 样例输出:
mo amo banana
mo amo gelatooo
- 解法:我是使用java解,因为Java里面有map集合可以很好的保存String字符串。
- 代码:
public static void main(String[] args) throws NumberFormatException, IOException {
//输入流
BufferedReader sr = new BufferedReader(new InputStreamReader(System.in));
int n;
//输入次数
n = Integer.parseInt(sr.readLine());
//创建map集合
Map<String, String> map = new HashMap<>();
//输入字典并且把字典放入map集合中
for(int i=0;i<n;i++) {
String book = sr.readLine();
String[] books = book.split(" ");
String name = books[0];
String value = books[books.length-1];
map.put(name,value);
}
//获取案例次数
int x;
x = Integer.parseInt(sr.readLine());
//遍历
for(int i = 0 ; i <x ; i++ ) {
String t = sr.readLine();
String c = sr.readLine();
//将字符串分段
String[] a = c.split(" ");
//将分段的字符串一一辨别
for (int j = 0 ;j < a.length; j++) {
System.out.print(map.get(a[j]));
if(j<a.length-1) {
System.out.print(" ");
}
}
System.out.println("");
}
}
总结
这道题目的算法不多,主要是利用java比较好写,c++也可以不过比较麻烦,java麻烦的就是输入比较麻烦。