#CSPJ2022D. [CSP-J 2022] 上升点列

[CSP-J 2022] 上升点列

题目描述

在一个二维平面内,给定 nn 个整数点 (xi,yi)(x_i, y_i),此外你还可以自由添加 kk 个整数点。

你在自由添加 kk 个点后,还需要从 n+kn + k 个点中选出若干个整数点并组成一个序列,使得序列中任意相邻两点间的欧几里得距离恰好为 11 而且横坐标、纵坐标值均单调不减,即 xi+1−xi=1,yi+1=yix_{i+1} - x_i = 1, y_{i+1} = y_i 或 yi+1−yi=1,xi+1=xiy_{i+1} - y_i = 1, x_{i+1} = x_i。请给出满足条件的序列的最大长度。

输入格式

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

接下来 nn 行,第 ii 行两个正整数 xi,yix_i, y_i 表示给定的第 ii 个点的横纵坐标。

输出格式

输出一个整数表示满足要求的序列的最大长度。

8 2
3 1
3 2
3 3
3 6
1 2
2 2
5 5
5 3
8
4 100
10 10
15 25
20 20
30 30
103

提示

【数据范围】

保证对于所有数据满足:1≤n≤5001 \leq n \leq 500,0≤k≤1000 \leq k \leq 100。对于所有给定的整点,其横纵坐标 1≤xi,yi≤1091 \leq x_i, y_i \leq {10}^9,且保证所有给定的点互不重合。对于自由添加的整点,其横纵坐标不受限制。

测试点编号 n≤n \leq k≤k \leq xi,yi≤x_i,y_i \leq
1∼21 \sim 2 1010 00 1010
3∼43 \sim 4 100100 100100
5∼75 \sim 7 500500 00
8∼108 \sim 10 109{10}^9
11∼1511 \sim 15 100100 100100
16∼2016 \sim 20 109{10}^9