atcoder#CF16EXHIBITIONFINALA. 1D Matching

1D Matching

Score : 500500 points

Problem Statement

There are NN computers and NN sockets in a one-dimensional world. The coordinate of the ii-th computer is aia_i, and the coordinate of the ii-th socket is bib_i. It is guaranteed that these 2N2N coordinates are pairwise distinct.

Snuke wants to connect each computer to a socket using a cable. Each socket can be connected to only one computer.

In how many ways can he minimize the total length of the cables? Compute the answer modulo 109+710^9+7.

Constraints

  • 1N1051 \leq N \leq 10^5
  • 0ai,bi1090 \leq a_i, b_i \leq 10^9
  • The coordinates are integers.
  • The coordinates are pairwise distinct.

Input

The input is given from Standard Input in the following format:

NN

a1a_1

:

aNa_N

b1b_1

:

bNb_N

Output

Print the number of ways to minimize the total length of the cables, modulo 109+710^9+7.

2
0
10
20
30
2

There are two optimal connections: 020,10300-20, 10-30 and 030,10200-30, 10-20. In both connections the total length of the cables is 4040.

3
3
10
8
7
12
5
1