编程题
卡牌
### 问题描述
这天, 小明在整理他的卡牌。
他一共有 $n$ 种卡牌, 第 $i$ 种卡牌上印有正整数数 $i(i \in[1, n])$, 且第 $i$ 种卡牌 现有 $a_{i}$ 张。
而如果有 $n$ 张卡牌, 其中每种卡牌各一张, 那么这 $n$ 张卡牌可以被称为一 套牌。小明为了凑出尽可能多套牌, 拿出了 $m$ 张空白牌, 他可以在上面写上数 $i$, 将其当做第 $i$ 种牌来凑出套牌。然而小明觉得手写的牌不太美观, 决定第 $i$ 种牌最多手写 $b_{i}$ 张。
请问小明最多能凑出多少套牌?
### 输入格式
输入共 3 行, 第一行为两个正整数 $n, m$ 。
第二行为 $n$ 个正整数 $a_{1}, a_{2}, \ldots, a_{n}$ 。
第三行为 $n$ 个正整数 $b_{1}, b_{2}, \ldots, b_{n}$ 。
### 输出格式
一行, 一个整数表示答案。
### 样例输入
```text
4 5
1 2 3 4
5 5 5 5
```
### 样例输出
```text
3
```
### 样例说明
这 5 张空白牌中, 拿 2 张写 1 , 拿 1 张写 2 , 这样每种牌的牌数就变为了 $3,3,3,4$, 可以凑出 3 套牌, 剩下 2 张空白牌不能再帮助小明凑出一套。
### 评测用例规模与约定
对于 $30 \\%$ 的数据, 保证 $n \leq 2000$;
对于 $100 \\%$ 的数据, 保证 $n \leq 2 \times 10^{5} ; a_{i}, b_{i} \leq 2 n ; m \leq n^{2}$ 。