Bob Roberts 是 CIA(阿拉巴马巧克力研究所)精英间谍小组的一员,他正在尝试破译死对头 NSA(阿肯色牛轧糖协会)的加密信息。幸运的是,NSA 的间谍人员远没有 Bob 的团队那么精明,因为他们使用的是 Hill 加密方案(在上一题中已有描述),该方案容易受到已知明文攻击。Bob 截获了一对明文/密文,并且知道敌方所用加密矩阵的大小。基于这些信息,Bob 知道有一种方法可以确定该加密矩阵,但他的团队中没有人确切知道该怎么做(嗯……看来他们并没有想象中那么精明)。Bob 来找你帮他们解决这个问题。一个复杂之处在于,可能没有足够的数据来唯一确定 NSA 的加密矩阵,而且他们截获的数据可能已损坏,导致该问题无解。
输入格式
输入的第一行包含一个正整数 $n \le 10$,表示加密所用矩阵和向量的大小。接下来是两行:第一行包含明文,第二行包含密文。这两行字符串仅由字符集 A, ..., Z, 0, ..., 9 和空格组成。两个字符串的长度相同且均为 $n$ 的倍数。这两个字符串都可能包含末尾的空格。
输出格式
输出三种可能的答案之一。如果输入不存在任何可能的加密矩阵,输出 No solution。否则,如果输入不能唯一确定加密矩阵,输出 Too many solutions。否则,输出该加密矩阵,每行输出一行,行内数值间用单个空格分隔。
样例
样例输入 1
3 ATTACK AT DAWN FPLSFA4SUK2W9K3
样例输出 1
30 1 9 4 23 7 5 9 13
样例输入 2
3 ATTACK FPLSFA
样例输出 2
Too many solutions
样例输入 3
3 ATTACK AT DAWN EPLSFA4SUK2W9K3
样例输出 3
No solution