복권
시간 제한2초메모리 제한1024 MB
각 구간이 A/B 확률로 제거되는 경사로 기계에서 공이 떨어지는 바구니 상금의 기댓값을 10^9+7 나머지로 구합니다.
문제
잭은 복권을 하면서 많은 시간과 돈을 쓴다. 복권 기계는 개의 평행한 경사로로 이루어져 있다(그림 참고). 각 경사로는 길이가 같은 개의 구간으로 나뉜다. 경사로 아래에는 정수가 적힌 바구니 개가 놓여 있다. 추첨은 다음과 같이 진행된다. 먼저 개의 구간 중 일부를 제거한다. 각 구간마다 면 주사위(면에 가 적혀 있다)를 굴려서 결과가 이하이면 그 구간을 제거한다. 그다음 기계의 가장 위 경사로 왼쪽 위 모서리에서 공을 놓는다. 공이 바구니에 들어가면 플레이어의 상금은 그 바구니에 적힌 금액이다. 당신은 잭에게 이런 게임에서는 대체로 돈을 잃는다는 점을 설명하려 한다. 이를 증명하기 위해 이 게임 상금의 기댓값 평균을 계산하려 한다. 기댓값은 로 나타낼 수 있다는 것이 알려져 있다. 여기서 와 는 정수이고, 는 기약분수이다. 을 만족하는 정수 을 이용하여 의 값을 구하라.
입력
첫째 줄에 기계의 크기를 나타내는 공백으로 구분된 정수 과 ()이 주어진다. 둘째 줄에 주사위 굴림의 매개변수인 공백으로 구분된 정수 와 (, )가 주어진다. 셋째 줄에 왼쪽부터 순서대로 바구니의 값인 공백으로 구분된 정수 개 ()이 주어진다.
출력
잭이 받을 상금의 기댓값을 나타내는 정수 하나를 출력한다. 형식은 위 설명을 따른다.
힌트
이 문제의 출력 형식에 맞추려면 ()를 만족하는 을 구해야 한다. 이 수를 를 법으로 한 의 역원이라고 부른다. 이고 가 소수이면 로 계산할 수 있다는 것이 알려져 있다.