编程题
### 问题描述
有 $ N $ 块等宽的纸牌,每块的长度各不相同。你可以选择任意一块纸牌进行水平方向上的切割,切割后得到的两块纸牌长度必须为整数,并且宽度与原始纸牌相同。
你的目标是利用这些纸牌搭建一堵由 $ K $ 块长度相同的纸牌围墙。请问,围墙纸牌的最大可能长度是多少?
### 输入格式
第一行包含两个整数 $ N $ 和 $ K $。
第二行包含 $ N $ 个整数,代表 $ N $ 块纸牌的初始长度。
### 输出格式
如果没有解决方案,则输出 `0`。
否则,在第一行输出一个整数,代表围墙纸牌的最大长度。
### 样例输入
```
3 4
15 10 8
```
### 样例输出
```
7
```
### 评测数据规模
- $ 1 \leq N \leq 10^5 $
- $ 1 \leq K \leq 10^{14} $
- 纸牌长度为 $ 1 $ 到 $ 10^9 $ 之间的整数