AT_bcu30_2018_a.球
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
现有N个球,分别写有整数A1,A2,...,AN
可以对这些球执行以下操作:
- 将两个球碰在一起。如果两个球上分别写有整数 x 和 y,那么这两个球会消失,取而代之的是一个新球,上面写有整数x×y。新生成的球可以被放在任意位置。
- 敲击一个球,并同时念出一个大于等于2的整数。如果球上写有整数x,而你念出的整数为y,并且x可以被y整除,那么被敲击的球会消失,而会出现两个新球,分别写有y与x/y。新生成的两个球可以分别被放在任意位置。
请判断是否可以通过执行任意次数的这些操作,将球的数量变为M,并且每个球上的整数变为B1,B2,...,BM。
输入格式
第一行一个正整数N,代表球的个数;
第二行共有N个正整数,分别代表A1,A2,...,AN;
第三行一个正整数M,代表最终球的数量;
第四行共有M个正整数,分别代表B1,B2,...,BM;
输出格式
如果可以通过执行任意次数的这些操作,将球的数量变为M,并且每个球上的整数变为B1,B2,...,BM,则输出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
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<=N,M<=9,2<=Ai,Bi<=9,Ai<=Ai+1,Bi<=Bi+1
样例解释 1
可以通过以下操作实现目标:
- 对写有 8 的球进行敲击,同时念出 2,生成写有 2 和 4 的两个球。此时球的数量为 5,球上的数字分别为 2,3,4,4,6。
- 对写有 4 的球进行敲击,同时念出 2,生成两个写有 2 的球。此时球的数量为 6,球上的数字分别为 2,2,2,3,4,6。
- 碰撞写有 2 的球和写有 3 的球。此时球的数量为 5,球上的数字分别为$ 2, 2, 4, 6, 6$。
样例解释 2
不需要进行任何操作即可实现目标。
输入解题思路,AI测评打分。不知道怎么写?