atcoder#ARC092A. [ABC091C] 2D Plane 2N Points

[ABC091C] 2D Plane 2N Points

配点 : 400400

問題文

二次元平面に,赤い点と青い点が NN 個ずつあります。 ii 個目の赤い点の座標は (ai,bi)(a_i, b_i) で,ii 個目の青い点の座標は (ci,di)(c_i, d_i) です。

赤い点と青い点は,赤い点の xx 座標が青い点の xx 座標より小さく, また赤い点の yy 座標も青い点の yy 座標より小さいとき,仲良しペアになれます。

あなたは最大で何個の仲良しペアを作ることができますか? ただし,11 つの点が複数のペアに所属することはできません。

制約

  • 入力は全て整数
  • 1N1001 \leq N \leq 100
  • 0ai,bi,ci,di<2N0 \leq a_i, b_i, c_i, d_i < 2N
  • a1,a2,...,aN,c1,c2,...,cNa_1, a_2, ..., a_N, c_1, c_2, ..., c_N はすべて異なる
  • b1,b2,...,bN,d1,d2,...,dNb_1, b_2, ..., b_N, d_1, d_2, ..., d_N はすべて異なる

入力

入力は以下の形式で標準入力から与えられる。

NN

a1a_1 b1b_1

a2a_2 b2b_2

::

aNa_N bNb_N

c1c_1 d1d_1

c2c_2 d2d_2

::

cNc_N dNd_N

出力

仲良しペアの個数の最大値を出力せよ。

3
2 0
3 1
1 3
4 2
0 4
5 5
2

例えば, (2,0)(2, 0)(4,2)(4, 2) をペアにし, (3,1)(3, 1)(5,5)(5, 5) をペアにすればよいです。

3
0 0
1 1
5 2
2 3
3 4
4 5
2

例えば, (0,0)(0, 0)(2,3)(2, 3) をペアにし, (1,1)(1, 1)(3,4)(3, 4) をペアにすればよいです。

2
2 2
3 3
0 0
1 1
0

一つもペアが作れない場合もあります。

5
0 0
7 3
2 2
4 8
1 6
8 5
6 9
5 4
9 1
3 7
5
5
0 0
1 1
5 5
6 6
7 7
2 2
3 3
4 4
8 8
9 9
4