SP77 BRICKS - New bricks disorder

题目描述

你有若干块排成一列的砖块,每个砖块上都有一个字母,你想通过多次调换任意两个砖块的方式,把这一列砖块序列排成另一个序列。但是,你只能按照若干个操作方法去操作。给定m对字母(a1,b1),...,(am,bm),你可以将序列里的任意一个字母ai和字母bi交换。 现在,请你检查这是否能完成。如果能,请计算最小的操作数。

输入格式

第一行是一个数字c,测试数据的组数。 下面c组数据的构成:前两行是两个字符串,由小写字母构成且长度不超过100000,表示已有序列和目标序列.下一行是一个数字m。然后是m行,每行包括两个小写字母ai和bi,不隔开。

输出格式

对于每组测试数据,如果可以达成目标则输出最小交换数取余2322^{32}232,否则输出-1. 【样例解释】 对于样例1中的第二组数据: abc cba 3 ab cb ca 一种可行的方式为依次调换原序列中的a和b、c和a、c和b。 ```