도로 연결성
시간 제한2초메모리 제한256 MB
매일 도로 하나를 무작위로 골라 열림과 닫힘 상태를 바꿉니다. 각 질의 [l, r]에서 그 기간 중 하루라도 모든 도시가 연결되는 확률을 구합니다.
문제
Byteland 나라에는 개의 도시가 있다. 모든 두 도시 사이는 양방향 도로로 연결되어 있다. 각 도로는 통행이 허용(개통)되어 있거나 금지(폐쇄)되어 있다. 0일차에는 개의 도로만 개통되어 있다.
1일차부터 매일 정부는 도로 하나를 고른다. 모든 도로가 뽑힐 확률은 같다. 뽑은 도로의 통행이 허용되어 있으면 정부가 그 도로를 폐쇄하고, 금지되어 있으면 개통한다.
정부는 도시 사이의 통신에 관심이 많다. 개의 날짜 구간 이 주어지며, 각 구간에 대해 그 구간 안의 어느 하루에 나라가 연결되어 있을 확률을 구하려고 한다. 나라가 연결되어 있다는 것은 임의의 두 도시 사이를 허용된 도로 하나 이상으로 이동할 수 있다는 뜻이다.
구하는 확률은 꼴의 기약분수로 나타낼 수 있으며, 이다. 이 값을 계산하여 형태로 출력하라.
입력
첫 줄에 두 정수 과 (, )이 주어진다. 각각 도시의 수와 0일차에 통행이 허용된 도로의 수이다.
이어지는 개의 줄에는 두 정수 와 (, )가 주어지며, 번째 개통 도로가 잇는 두 도시를 뜻한다. 개통 도로는 모두 서로 다른 것이 보장된다.
다음 줄에는 질의의 수 ()가 주어진다.
이어지는 개의 줄에는 두 정수 과 ()이 주어지며, 정부가 관심을 두는 날짜 구간을 뜻한다.
출력
개의 줄을 출력한다. 번째 줄에는 번째 질의의 답을 형태의 정수 하나로 출력한다. 여기서 는 해당 질의의 확률이다.
힌트
첫 번째 예제에서 첫 번째 질의는 정부가 아직 도로를 하나도 고르지 않은 상태이고, 시작 시점에 나라가 연결되어 있지 않으므로 확률은 이다. 두 번째부터 아홉 번째 질의의 확률은 각각 , , , , , , , 이다.