第20530题 程序题
田忌赛马 计算最多获胜轮次

题目描述

你和田忌各有 N 匹马,需要进行 N 轮比赛,每轮各派出一匹马决出胜负。所有马匹的速度两两不同,无平局。 你的马匹速度为 $u_1, u_2, ..., u_n$,田忌的马匹速度为 $v_1, v_2, ..., v_n$,田忌会按固定顺序派出他的马匹,请你安排己方马匹的出场顺序,求出最多能获胜的轮次。

输入描述

  1. 第一行一个整数 N,满足 $1 \leq N \leq 5 \times 10^4$。
  2. 第二行 N 个空格分隔的整数,表示你的马匹速度 $u_1, u_2, ..., u_n$,满足 $1 \leq u_i \leq 2N$。
  3. 第三行 N 个空格分隔的整数,表示田忌的马匹速度 $v_1, v_2, ..., v_n$,满足 $1 \leq v_i \leq 2N$。 注意:输入输出不要附带任何提示信息。

样例输入1

3
1 3 5
2 4 6

样例输出1

2

样例解释1

  • 第1轮:田忌派出速度2的马,你派出速度3的马,获胜。
  • 第2轮:田忌派出速度4的马,你派出速度5的马,获胜。
  • 第3轮:田忌派出速度6的马,你派出速度1的马,落败。 最终共获胜2轮。

样例输入2

5
10 3 5 8 7
4 6 1 2 9

样例输出2

5
编辑模式