团队改名
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

9756 在游戏里面有一个小队,可是这个小队总是失败,9756 认为是名字的问题,所以 9756 开始准备给这个团队改名。

改名的方式是选取两个字母 xy之后将团队名字中所有的 x 换成 y , 所有的 y 换成 x (同时执行)

每一次改名后,9756 若觉得名字不好,就会在 上一次改名后的基础上 继续改名。

已知最开始的团队名字,以及 9756 团队改名的次数和每次改名时替换的两个字母,求最终的队伍名称。

输入描述:

第一行输入两个正整数 n,m(1 \leq n,m \leq 10^5) 表示字符串长度和修改次数。

第二行输入一个字符串 S,表示这个队伍最开始的名字。

接下来 m 行,每行输入两个字母 x,y,表示替换的字母。

保证:队伍名 S 与 替换字母 x,y 全部是小写英文。

输出描述:

输出一个字符串 s ,表示队伍最终的名字。
示例1

输入

复制
15 1
clxcsdabushangc
c m

输出

复制
mlxmsdabushangm
示例2

输入

复制
11 6
abacabadaba
a b
b c
a d
e g
f a
b b

输出

复制
cdcbcdcfcdc