시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB56171644.444%

문제

$p$이상 $q$이하인 모든 실수의 집합을 $[p,q]$로 나타낸다. 이를 구간이라고 한다. $p > q$일 수 있으며, 이 때 집합은 공집합인 것에 주의하라.

$k$개의 구간 $[p_1, q_1]$, $[p_2, q_2]$, $\cdots$, $[p_k,q_k]$의 교집합은 $P = \max{(p_1, p_2, \cdots , p_k)}$, $Q = \min{(q_1, q_2, \cdots , q_k)}$라고 할 때, $P$이상 $Q$이하인 집합이므로, 구간 $[P,Q]$로 나타낼 수 있다.

어떤 구간 $[p,q]$의 길이는 $\max{(q-p, 0)}$으로 정의된다.

$N$개의 구간 $I_1$, $I_2$, $\cdots$, $I_N$이 주어진다. $l_i = [s_i,e_i]$이다. $I_i$중에서 한 개이상의 구간을 선택하는 $2^N-1$가지의 모든 방법에 대해, 선택된 구간들의 교집합 길이의 합과 길이가 $1$이상인 교집합의 개수를 구하는 프로그램을 작성하라.

입력

첫 번째 줄에 주어지는 구간의 개수를 나타내는 하나의 정수 $N$($1 ≤ N ≤ 10^5$)이 주어진다.

다음 $N$개의 줄의 $i$번째 줄에는 $I_i$의 정보를 나타내는 두 정수 $s_i$, $e_i$($0 ≤ s_i, e_i ≤ 10^9$)가 공백 하나로 구분되어 주어진다. $I_i = [s_i, e_i]$인 것이다.

출력

첫 번째 줄에 주어진 구간 중에서 한 개이상의 구간을 선택하는 $2^N-1$가지의 모든 방법에 대해, 선택된 구간들의 교집합 길이의 합과 길이가 $1$이상인 교집합의 개수를 공백 하나로 구분하여 출력한다. 이 수들은 매우 클 수 있으므로, $1\,000\,000\,007$로 나눈 나머지를 출력하도록 한다.

예제 입력 1

4
1 4
1 3
2 4
5 6

예제 출력 1

14 8
  • $[1, 4]$: 길이 $3$
  • $[1, 3]$: 길이 $2$
  • $[2, 4]$: 길이 $2$
  • $[1,4] \cap [1,3] = [1,3]$: 길이 $2$
  • $[1,4] \cap [2,4] = [2,3]$: 길이 $2$
  • $[1,3] \cap [2,4] = [2,3]$: 길이 $1$
  • $[1,4] \cap [1,3] \cap [2,4] = [2,3]$: 길이 $1$

$[5,6]$과 다른 세 구간의 교집합을 구하면 길이가 $0$이 되므로, $[5,6]$의 길이 $1$을 따로 더하면 답은 $14$가 된다.

또한 위에서 알 수 있듯, 길이가 $1$이상인 교집합의 개수는 $8$개 이다.

출처

Contest > kriiicon > 제5회 kriiicon P3번