AT_bcu30_2018_a 球

题目描述

现有N个球,分别写有整数$A_1, A_2, ..., A_N$ 可以对这些球执行以下操作: 1. 将两个球碰在一起。如果两个球上分别写有整数 $x$ 和 $y$,那么这两个球会消失,取而代之的是一个新球,上面写有整数$x × y$。新生成的球可以被放在任意位置。 2. 敲击一个球,并同时念出一个大于等于2的整数。如果球上写有整数$x$,而你念出的整数为$y$,并且$x$可以被$y$整除,那么被敲击的球会消失,而会出现两个新球,分别写有$y$与$x / y$。新生成的两个球可以分别被放在任意位置。 请判断是否可以通过执行任意次数的这些操作,将球的数量变为$M$,并且每个球上的整数变为$B_1, B_2, ..., B_M$。

输入格式

第一行一个正整数$N$,代表球的个数; 第二行共有$N$个正整数,分别代表$A_1, A_2, ..., A_N$; 第三行一个正整数$M$,代表最终球的数量; 第四行共有$M$个正整数,分别代表$B_1, B_2, ..., B_M$;

输出格式

如果可以通过执行任意次数的这些操作,将球的数量变为$M$,并且每个球上的整数变为$B_1, B_2, ..., B_M$,则输出`Yes`,否则输出`No`。 ## 输入输出样例 ### 样例输入 #1 ``` 4 3 4 6 8 5 2 2 4 6 6 ``` ### 样例输出 #1 ``` Yes ``` ### 样例输入 #2 ``` 7 2 3 4 5 6 8 9 7 2 3 4 5 6 8 9 ``` ### 样例输出 #2 ``` Yes ``` ### 样例输入 #3 ``` 5 2 3 5 6 8 9 2 3 4 4 4 4 5 6 7 ``` ### 样例输出 #3 ``` No ```

说明/提示

### 约束条件 $1