CF1445A.Array Rearrangment

传统题 时间 2000 ms 内存 256 MiB 3 尝试 1 已通过 1 标签

Array Rearrangment

题目描述

给定两个长度为 nn 的正整数数组 aa 和 bb,以及一个整数 xx。请判断是否可以重新排列数组 bb 的元素,使得对于每个 ii(1≤i≤n1 \le i \le n),都有 ai+bi≤xa_i + b_i \leq x。

输入格式

输入的第一行包含一个整数 tt(1≤t≤1001 \leq t \leq 100),表示测试用例的数量。接下来有 tt 组测试用例,每组测试用例描述如下。

每组测试用例的第一行包含两个整数 nn 和 xx(1≤n≤501 \leq n \leq 50,1≤x≤10001 \leq x \leq 1000),分别表示数组 aa 和 bb 的长度,以及题目中给定的参数 xx。

每组测试用例的第二行包含 nn 个整数 a1,a2,…,ana_1, a_2, \ldots, a_n(1≤a1≤a2≤⋯≤an≤x1 \leq a_1 \leq a_2 \leq \dots \leq a_n \leq x),表示按非递减顺序排列的数组 aa 的元素。

每组测试用例的第三行包含 nn 个整数 b1,b2,…,bnb_1, b_2, \ldots, b_n(1≤b1≤b2≤⋯≤bn≤x1 \leq b_1 \leq b_2 \leq \dots \leq b_n \leq x),表示按非递减顺序排列的数组 bb 的元素。

不同测试用例之间以一个空行分隔。

输出格式

对于每组测试用例,如果可以重新排列对应的数组 bb,使得对于每个 ii 都有 ai+bi≤xa_i + b_i \leq x,则输出 Yes,否则输出 No。

输出时大小写不敏感。

说明/提示

在第一个测试用例中,可以将 bb 重新排列为 [1,2,1][1, 2, 1]。此时,1+1≤41 + 1 \leq 4,2+2≤42 + 2 \leq 4,3+1≤43 + 1 \leq 4。

在第二个测试用例中,可以将 bb 设为 [5,2][5, 2],此时 1+5≤61 + 5 \leq 6,4+2≤64 + 2 \leq 6。

在第三个测试用例中,无论如何重新排列数组 bb,都有 a4+b4=4+b4>4a_4 + b_4 = 4 + b_4 > 4。

在第四个测试用例中,数组 bb 只有一种排列方式,但 5+5>55 + 5 > 5,不满足条件。

由 ChatGPT 4.1 翻译

样例

4
3 4
1 2 3
1 1 2

2 6
1 4
2 5

4 4
1 2 3 4
1 2 3 4

1 5
5
5
Yes
Yes
No
No

在线编程 IDE

建议全屏模式获得最佳体验