题目描述
小蓝有两个长度均为 $n$ 的数列 $A=\{a_1, a_2, \cdots, a_n\}$ 和 $B=\{b_1, b_2, \cdots, b_n\}$,将两个数列作差定义为 $C=A-B=\{c_1=a_1-b_1, c_2=a_2-b_2, \cdots, c_n=a_n-b_n\}$。小蓝将对数列 $B$ 进行若干次操作,每次操作可以将数列 $B$ 中的任意一个数更改为任意一个整数。在进行完所有操作后,小蓝可以按任意顺序将数列 $B$ 重排,之后再计算数列 $C$。小蓝想知道,最少操作多少次可以使得数列 $C$ 中的所有数都为正整数。
输入格式
输入的第一行包含一个正整数 $n$;
第二行包含 $n$ 个整数 $a_1, a_2, \cdots, a_n$,相邻整数之间使用一个空格分隔。
第三行包含 $n$ 个整数 $b_1, b_2, \cdots, b_n$,相邻整数之间使用一个空格分隔。
样例输入 #1
4
22 31 12 14
3 19 27 44
提示
#### 【样例说明】
其中一种方案:将 $44$ 改为 $0$,重新排列 $B$ 为 $\{19, 27, 3, 0\}$,使得数列 $C=\{3, 4, 9, 14\}$ 均为正整数。
#### 【评测用例规模与约定】
- 对于 $30\%$ 的评测用例,$n \leq 10$;
- 对于所有评测用例,$1 \leq n \leq 10^5$,$-10^9 \leq a_i \leq 10^9$,$-10^9 \leq b_i \leq 10^9$。
来源
第十六届蓝桥杯大赛软件类省赛第二场C/C++大学B组