#P7154. [USACO20DEC] Sleeping Cows P

[USACO20DEC] Sleeping Cows P

题目描述

Farmer John 有 NN1N30001≤N≤3000)头各种大小的奶牛。他原本为每头奶牛量身定制了牛棚,但现在某些奶牛长大了,使得原先的牛棚大小不够用。具体地说,FJ 原来建造了 NN 个牛棚的大小为 t1,t2,,tNt_1,t_2,…,t_N,现在奶牛的大小为 s1,s2,,sNs_1,s_2,…,s_N1si,ti1091≤s_i,t_i≤10^9)。

每天晚上,奶牛们都会按照某种方式寻找睡觉的牛棚。奶牛 ii 可以睡在牛棚 jj 中当且仅当她的大小可以进入牛棚(sitjs_i≤t_j)。每个牛棚中至多可以睡一头奶牛。

我们称奶牛与牛棚的一个匹配是极大的,当且仅当每头奶牛可以进入分配给她的牛棚,且对于每头未被分配牛棚的奶牛无法进入任何未分配的空牛棚。

计算极大的匹配的数量模 109+710^9+7 的结果。

输入格式

输入的第一行包含 NN

第二行包含 NN 个空格分隔的整数 s1,s2,,sNs_1,s_2,…,s_N

第三行包含 NN 个空格分隔的整数 t1,t2,,tNt_1,t_2,…,t_N

输出格式

输出极大的匹配的数量模 109+710^9+7 的结果。

4
1 2 3 4
1 2 2 3
9

提示

以下是全部九种极大的匹配。有序对 (i,j)(i,j) 表示奶牛 ii 被分配到了牛棚 jj

(1, 1), (2, 2), (3, 4)
(1, 1), (2, 3), (3, 4)
(1, 1), (2, 4)
(1, 2), (2, 3), (3, 4)
(1, 2), (2, 4)
(1, 3), (2, 2), (3, 4)
(1, 3), (2, 4)
(1, 4), (2, 2)
(1, 4), (2, 3)
  • 测试点 2-3 中,N8N≤8
  • 测试点 4-12 中,N50N≤50
  • 测试点 13-20 没有额外限制。

供题:Nick Wu