#G0029. 排序【2025第一学期期末考试T6】

排序【2025第一学期期末考试T6】

题目描述

聪明的 BobBob 自学了排序算法,他想考考你。

BobBob 给你 nn 个随机整数 a[i]a[i],然后再给你 mm 个互不相同的位置 p1,p2,...,pm(1pi<n),pip_1,p_2,...,p_m(1 \le p_i < n),p_i 位置可以和 pi+1p_i+1 位置的数交换, 也就是说 a[pi]a[p_i] 可以和 a[pi+1]a[p_i+1] 交换,当然你可以对 a[pi]a[pi+1]a[p_i]、a[p_i+1] 两个数交换任意次

你的任务就是判断序列 a[i]a[i],在给定位置 p1,p2,...,pmp_1,p_2,...,p_m ,按照要求交换后,能否变成非递减的有序序列。

他出了 tt 组数据,请你帮忙判断,如果可以输出 Yes“Yes”,否则输出 No“No”

输入格式

第一行输入一个整数 tt ,表示有tt组测试数据,接下来是tt组测试数据。

对于每组测试数据,第一行两个整数 nnmm ,表示序列的个数和可以交换的位置数。

第二行包括 nn 个整数 a[i]a[i]

第三行包括 mm 个整数 p1,p2,...,pmp_1,p_2,...,p_m(1pi<n1 \le p_i < n , pip_i 互不相同),表示约定的位置。

输出格式

对于每组测试数据,如何可以按照规定进行若干次交换得到非递减的有序序列,输出 "Yes""Yes"(不包括引号),否则输出 "No""No",每组测试数据输出一行。

6
3 2
3 2 1
1 2
4 2
4 1 2 3
3 2
5 1
1 2 3 4 5
1
4 2
2 1 4 3
1 3
4 2
4 3 2 1
1 3
5 2
2 1 2 3 3
1 4
Yes
No
Yes
Yes
No
Yes

数据规模与约定

80%80 \% 的数据:

$ 1 \le t \le 100,1 \le m < n \le 100,1 \le a_i \le 100,1 \le p_i < n,p_i$ 互不相同 。

100%100 \% 的数据:

$1 \le t \le 100,1 \le m < n \le 10000,1 \le a_i \le 10000,1 \le p_i<n,p_i$ 互不相同 。