#954. 上升点列(point)

上升点列(point)

题目描述

在一个二维平面内,给定 n 个整数点 (xᵢ, yᵢ),此外你还可以自由添加 k 个整数点。

你在自由添加 k 个点后,还需要从 n + k 个点中选出若干个整数点并组成一个序列,使得序列中任意相邻两点间的欧几里得距离恰好为 1 而且横坐标、纵坐标值均单调不减,即 xᵢ₊₁ - xᵢ = 1, yᵢ₊₁ = yᵢ 或 yᵢ₊₁ - yᵢ = 1, xᵢ₊₁ = xᵢ。请给出满足条件的序列的最大长度。

输入格式

第一行两个正整数 n, k 分别表示给定的整点个数、可自由添加的整点个数。

接下来 n 行,第 i 行两个正整数 xᵢ, yᵢ 表示给定的第 i 个点的横纵坐标。

输出格式

输出一个整数表示满足要求的序列的最大长度。## 样例 3 第三个样例满足 k = 0。

数据范围

测试点编号 n ≤ k ≤ x_i, y_i ≤
1 ~ 2 10 0 10
3 ~ 4 100 100
5 ~ 7 500 0
8 ~ 10 10^9
11 ~ 15 100 100
16 ~ 20 10^9
保证对于所有数据满足:1 ≤ n ≤ 500,0 ≤ k ≤ 100。对于所有给定的整点,其横纵坐标 1 ≤ xᵢ, yᵢ ≤ 10^9,且保证所有给定的点互不重合。对于自由添加的整点,其横纵坐标不受限制。

样例

输入样例 1

8 2
3 1
3 2
3 3
3 6
1 2
2 2
5 5
5 3

输出样例 1

8

输入样例 2

4 100
10 10
15 25
20 20
30 30

输出样例 2

103