#P2544. PreQueL
PreQueL
本题没有可用的提交语言。
描述
在一个名为 PreQueL 的简单数据库管理系统(DBMS)中,唯一允许的列类型是 CHAR(1)(单个字符),而且其值被限制为英文字母大写形式(从 'A' 到 'Z')。一张表最多可包含 9 列,列的编号从 1 到 9。表本身用小写英文字母(从 'a' 到 'z')命名。
唯一可行的数据库查询操作是,首先将所有的表进行连接,然后根据以下两种形式之一的条件来选择某些行:要么是 <列>=<值>,要么是 <列 1>=<列 2> ,例如 或 。所有条件必须同时成立,就好像它们是通过 “AND” 运算符连接起来的一样。
你必须编写一个 PreQueL 处理器,该处理器在给定一些表和一组条件的情况下,能够生成查询结果,也就是那些满足所有条件的连接后的行。生成的行必须按字典序进行排序。
输入
输入文件的第一行包含两个整数 —— 表的数量 和条件的数量 。
从第二行开始是 个表的表示,每个表的第一行是行数 和列数 ,接下来是 行,每行恰好由 个字符组成。在所有表的表示之后是 行包含条件的内容。
约束条件为:,,, 。
输出
输出文件包含查询结果的行,每行一个结果行。任何输入查询产生的结果行数都不会超过 1000 行。结果行需按字典序进行排序。
输入数据 1
2 2
3 2
AX
BX
BY
2 3
ACD
BCC
a1=b1
a2=X
输出数据 1
AXACD
BXBCC
来源
2000 年东北欧地区赛,远东分区赛