TDPC K - ターゲット

考え方

ABCでいうと、E問題級。

同時に採用できる円は、円の左端と右端で大小関係が逆転しているものである。
つまり、左端が大きい順にソートして、右端の最長増加部分列の長さを求めれば答え。

ただし、入力には左端や右端が同じであるものが含まれるため、これらを適切に処理しなければならない。
左端が同じ場合、最初のソートのタイブレークで右端が大きい順になるようにすればよい。
右端については、最長増加部分列を求めるときに、一致するものは採用しないようにすればよい。

計算量は $O(N\log N)$ である。

入力例1での動作

入力を受け取る。

n: 3
x: {1, 0, 3}
r: {1, 3, 2}

各円について、左端を $x-r$、右端を $x+r$ とする。

円1: (0, 2)
円2: (-3, 3)
円3: (1, 5)

左端が大きい順にソートする。

(1, 5), (0, 2), (-3, 3)

右端だけを取り出すと、次の数列になる。

vec: {5, 2, 3}

この数列の最長増加部分列の長さは $2$ である。
例えば、$2,3$ を採用できる。

したがって、作れるターゲットの最大サイズは $2$ となる。

注意点

特になし。

別解

特になし。