U283436 模式寻数
题目背景
本题是清华考研机试 2015 T2 的加强版。
题目描述
给定一个长度为 $n$ 的数组,再给定一个数 $k$ ,求数组中任取两个元素相加得到的所有结果当中小于 $k$ 的结果的数目。
需要注意的是,这里把每一个数当作独立的结果处理。
输入格式
每个测试点有多组输入。
第一个数为数据组数 $T$( $T$ 不超过 $10$ )。
对于每组数据,第一行为两个数 $n, m$,表示数组长度 $n$ 与查询次数 $m$ 。
接下来一行,$n$ 个整数,表示数组 $a $. 保证对于每个数 $a_i, 0\le a_i\le 100000$
接下来 $m$ 行,每行一个数 $k$ ,意义见题目描述。$1\le k\le 200000$ 。
输出格式
对于每次查询,输出一行,所求数组中任取两个元素相加得到的所有结果当中小于 $k$ 的结果的数目。
说明/提示
### 样例 1 解释
下述数组是对样例中数组 ${1,5,3,4,2} $ 任选两个数相加得到的所有的结果:
```plain
3 4 5 5 6 6 7 7 8 9
```
### 数据范围
对于占分 $20\%$ 的测试点,有 $1\le n,m\le 2\times 10^3,\sum n\le 4\times 10^3$ 。
对于占分 $100\%$ 的测试点,有 $1\le n,m\le 10^5,\sum n \le 3\times 10^5$ 。