#HXOJ3322. 二分查找强化题三:寻找固定的和

提交1 通过1
通过率100%
时间限制1000ms
内存限制128MiB

题目描述

题目描述

给出两个数组x₁,x₂,…,xₙ;y₁,y₂,…,yₙ。给出一个整数k,每次从两个数组中各自取出一个数xᵢ和yⱼ,要求满足xᵢ+yⱼ=k。

已经取出过的数不能再取,问最多可以取出几对数?

输入格式

输入共3行;

第1行,2个正整数n,k;

第2行,用空格隔开的n个正整数x₁,x₂,…,xₙ;

第3行,用空格隔开的n个正整数y₁,y₂,…,yₙ;

输出格式

输出共1行;

第1行,一个正整数c,表示最多能取出多少组数。

输入样例 #1

10 22
1 2 3 4 5 6 7 8 9 10
12 12 12 12 12 12 14 16 18 20

输出样例 #1

5

输入样例 #2

4 10
1 1 9 9
1 1 9 9

输出样例 #2

4

输入样例 #3

5 7
1 2 3 4 5
2 3 4 5 6

输出样例 #3

5

提示

【样例说明】

可以选以下5对(组成5对的方法不唯一)

(2,20),(4,18),(6,16),(8,14),(10,12)

数据范围与约定

对40%的测试数据,数组从小到大排好序的

对60%的测试数据 1≤n≤5000;所有x互不相同;所有y互不相同;

对80%的测试数据 1≤n≤5000;

对100%的测试数据 1≤n≤200,000;1≤k≤10⁹;1≤xᵢ,yᵢ≤10⁹