구간들
시간 제한1초메모리 제한1024 MB
N개 구간의 공집합이 아닌 모든 부분집합에 대해 교집합 길이의 합과 길이가 1 이상인 교집합의 개수를 1,000,000,007로 나눈 나머지로 구한다.
문제
이상 이하인 모든 실수의 집합을 로 나타낸다. 이를 구간이라고 한다. 일 수 있으며, 이 때 집합은 공집합인 것에 주의하라.
개의 구간 , , , 의 교집합은 , 라고 할 때, 이상 이하인 집합이므로, 구간 로 나타낼 수 있다.
어떤 구간 의 길이는 으로 정의된다.
개의 구간 , , , 이 주어진다. 이다. 중에서 한 개이상의 구간을 선택하는 가지의 모든 방법에 대해, 선택된 구간들의 교집합 길이의 합과 길이가 이상인 교집합의 개수를 구하는 프로그램을 작성하라.
입력
첫 번째 줄에 주어지는 구간의 개수를 나타내는 하나의 정수 ()이 주어진다.
다음 개의 줄의 번째 줄에는 의 정보를 나타내는 두 정수 , ()가 공백 하나로 구분되어 주어진다. 인 것이다.
출력
첫 번째 줄에 주어진 구간 중에서 한 개이상의 구간을 선택하는 가지의 모든 방법에 대해, 선택된 구간들의 교집합 길이의 합과 길이가 이상인 교집합의 개수를 공백 하나로 구분하여 출력한다. 이 수들은 매우 클 수 있으므로, 로 나눈 나머지를 출력하도록 한다.