上升点列
时间限制:1秒 内存限制:256M
【题目描述】
在一个二维平面内,给定 \(n\) 个整数点 \((x_i,y_i)\),此外你还可以自由添加 \(k\) 个整数点。你在自由添加 \(k\) 个点后,还需要从 \(n+k\) 个点中选出若干个整数点并组成一个序列,使得序列中任意相邻两点间的欧几里得距离恰好为 \(1\) 而且横坐标、纵坐标值均单调不减,即 \(x_{i+1}−x_i = 1,y_{i+1}=y_i\) 或 \(y_{i+1}−y_i=1,x_{i+1}=x_i\)。请给出满足条件的序列的最大长度。
【输入格式】
第一行两个正整数 \(n,k\) 分别表示给定的整点个数、可自由添加的整点个数。
接下来 \(n\) 行,第i行两个正整数 \(x_i,y_i\) 表示给定的第 \(i\) 个点的横纵坐标。
【输出格式】
输出一个整数表示满足要求的序列的最大长度。
【输入输出样例1】
Input
8 2
3 1
3 2
3 3
3 6
1 2
2 2
5 5
5 3
Output
8
【输入输出样例2】
Input
4 100
10 10
15 25
20 20
30 30
Output
103
【数据限制】
保证对于所有数据满足:\(1≤n≤500,0≤k≤100\)。对于所有给定的整点,其横纵坐标 \(1≤x_i,y_i≤10^9\),且保证所有给定的点互不重合。对于自由添加的整点,其横纵坐标不受限制。
【来源】
Mr.he