编程题
### 问题描述
农夫小齐的农场被划分成一个 $N \times N$ 的方格牧场($2 \leq N \leq 15$)。目前,农场的外围已经有了一圈围栏,但牛可以自由地从一个牧场走到另一个。
由于法规的原因,每个围栏必须是横跨整个农场的水平或垂直线($K$ 为围栏的数量,$1 \leq K \leq 2N - 2$)。农夫小齐目前只有足够的钱建造至多 $K$ 个围栏。
小齐希望通过建造围栏来将牛群彼此隔离。由于牧场内部有限,牛只能通过围栏外的牧场互相到达。农夫小齐想知道,如果他建造围栏的位置能够使得最大的牛群的大小最小,那么这个最小的大小是多少?
### 输入格式
第 $1$ 行:两个整数 $N$ 和 $K$。
第 $2$ 行至第 $1+N$ 行:每行包含 $N$ 个整数,描述农场每一行中各个牧场的牛的数量(每个牧场内的牛数量至少为 0,最多为 1000 头牛)。
### 输出格式
最大牛群的最小可能大小。
### 样例输入
```
3 2
1 1 2
1 1 2
2 2 4
```
### 样例输出
```
4
```
### 评测数据规模
$2 \leq N \leq 15$,$1 \leq K \leq 2N - 2$。