#P16754. [Nerc2024]Knowns and Unknowns

[Nerc2024]Knowns and Unknowns

题目描述

两位数学教授在同一天安排了答疑时间。学生们逐个拜访教授并展示作业解答。

在整个学期中,两位教授都预先规定了一个固定的学生访问顺序。共有 nn 名学生,编号为 11nn。每位教授规定的顺序都是 11nn 的一个排列。

今天只有一部分学生来到大学。设 AA 为今天到校学生编号组成的集合。集合 AA 中的所有学生都拜访了两位教授,而不在 AA 中的学生两位教授都没有拜访。

每位教授都按照学生实际来访的先后顺序记录了一份名单。该名单必须与教授预先规定的顺序一致,只是没有到校的学生会从中被删除。

由于现在是学年初,教授尚未认全所有学生:

  • 若教授认识某名学生,名单中会记录该学生的编号;
  • 若教授不认识该学生,名单中会记录 -1

例如,第一位教授规定的顺序为

[1,2,3,4],[1,2,3,4],

第二位教授规定的顺序为

[3,2,4,1][3,2,4,1]。

今天第一位教授记录的名单为

[1,1,1],[1,-1,-1],

第二位教授记录的名单为

[3,1,1][3,-1,1]。

由名单可知,今天共有三名学生到校,并且集合 AA 可能是 {1,2,3}\{1,2,3\},也可能是 {1,3,4}\{1,3,4\}

给定两位教授规定的排列以及今天记录的两份名单,请对每名学生判断:

  • 他一定到校;
  • 他一定没有到校;
  • 无法确定。

教授也可能认错学生,因此输入数据可能彼此矛盾。

输入格式

第一行包含整数 TT,表示测试用例数量。

对每个测试用例:

第一行包含整数 nn

1n20001\le n\le2000。

第二行包含 nn 个互不相同的整数

p1,1,p1,2,,p1,n,p_{1,1},p_{1,2},\ldots,p_{1,n},

表示第一位教授规定的访问顺序。

第三行以相同格式给出第二位教授规定的顺序

p2,1,p2,2,,p2,np_{2,1},p_{2,2},\ldots,p_{2,n}。

第四行包含整数 kk,表示今天到校的学生数量:

1kn1\le k\le n。

第五行包含 kk 个整数

s1,1,s1,2,,s1,k,s_{1,1},s_{1,2},\ldots,s_{1,k},

表示第一位教授的名单。每个元素要么为 -1,要么是 11nn 的学生编号。每名学生在该名单中至多出现一次。

第六行以相同格式给出第二位教授的名单

s2,1,s2,2,,s2,ks_{2,1},s_{2,2},\ldots,s_{2,k}。

所有测试用例的 nn 之和不超过 2000。

输出格式

对于每个测试用例,输出一行。

若输入数据不一致,输出:

Inconsistent

否则输出一个长度为 nn 的字符串。第 ii 个字符表示第 ii 名学生的状态:

  • Y:该学生一定到校;
  • N:该学生一定没有到校;
  • ?:无法确定。

样例 1

2
4
1 2 3 4
3 2 4 1
3
1 -1 -1
3 -1 1
4
1 2 3 4
3 2 4 1
3
1 -1 2
3 -1 1
Y?Y?
Inconsistent

样例 2

2
3
1 2 3
2 1 3
2
-1 2
-1 -1
3
1 2 3
3 2 1
2
1 3
2 -1
YYN
Inconsistent