[CSP-J 2022 第四题] 上升点列
题目描述
在一个二维平面内,给定 \(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
样例输入 #1
8 2
3 1
3 2
3 3
3 6
1 2
2 2
5 5
5 3
样例输出 #1
8
样例 #2
样例输入 #2
4 100
10 10
15 25
20 20
30 30
样例输出 #2
103
提示
【样例 #3】
见附件中的 point/point3.in
与 point/point3.ans
。
第三个样例满足 \(k = 0\)。
【样例 #4】
见附件中的 point/point4.in
与 point/point4.ans
。
【数据范围】
保证对于所有数据满足:\(1 \leq n \leq 500\),\(0 \leq k \leq 100\)。对于所有给定的整点,其横纵坐标 \(1 \leq x_i, y_i \leq {10}^9\),且保证所有给定的点互不重合。对于自由添加的整点,其横纵坐标不受限制。
测试点编号 | \(n \leq\) | \(k \leq\) | \(x_i,y_i \leq\) |
---|---|---|---|
\(1 \sim 2\) | \(10\) | \(0\) | \(10\) |
\(3 \sim 4\) | \(10\) | \(100\) | \(100\) |
\(5 \sim 7\) | \(500\) | \(0\) | \(100\) |
\(8 \sim 10\) | \(500\) | \(0\) | \({10}^9\) |
\(11 \sim 15\) | \(500\) | \(100\) | \(100\) |
\(16 \sim 20\) | \(500\) | \(100\) | \({10}^9\) |
信息
- ID
- 1009
- 难度
- 3
- 分类
- (无)
- 标签
- 递交数
- 1
- 已通过
- 1
- 通过率
- 100%
- 上传者