배틀 로얄
시간 제한2초메모리 제한512 MB
각 플레이어의 집 위치 x_i와 생존 시간 a_i가 주어질 때, 최종 안전지대의 점 M이 [L, R]에서 균등하게 정해진다고 하면 각 플레이어가 마지막까지 살아남을 확률을 구합니다.
문제
배틀 로얄 게임을 해 본 적이 있나요? 이런 게임에서 플레이어는 넓고 빈 공간에 혼자 놓입니다. 무기, 탄약, 구급약, 방어구를 모아서 서로를 죽여야 합니다. 플레이어가 한 명만 남으면 게임이 끝나고, 그 플레이어가 우승자로 선언됩니다.
플레이어끼리 싸우도록 안전 구역이 도입됩니다. 안전 구역 밖에 있는 플레이어는 피해를 입습니다. 안전 구역은 한 점이 될 때까지 계속 줄어들기 때문에, 플레이어는 조만간 선택해야 합니다. 안전 구역에 들어가 다른 플레이어와 싸우거나, 밖에 머물러 체력을 잃고 결국 죽거나 둘 중 하나입니다.
일차원 세계에는 BattleUnknown's Playergrounds라는 유명한 배틀 로얄 게임이 있습니다. 게임 구역은 구간 입니다. 처음에 안전 구역은 구간 전체입니다. 게임이 끝날 때 안전 구역은 한 점 ()으로 줄어듭니다. 이때 은 위에서 같은 확률로 정해집니다. 안전 구역은 이 상수가 되도록 줄어들며, 길이는 매초 1씩 줄어듭니다.
오늘 극도로 수동적인 플레이어 명이 경기를 합니다. 번째 플레이어는 좌표 에 있는 집에 숨어 있고, 움직이지 않습니다. 이들은 집을 떠나느니 안전 구역 밖에서 죽는 편이 낫다고 생각합니다. 이들의 계획은 모은 구급약으로 다른 모든 플레이어보다 오래 버티는 것입니다. 번째 플레이어는 안전 구역 밖에서 초 동안 살아 있을 수 있습니다.
각 플레이어가 이 게임에서 우승할 확률을 구하세요.
입력
첫 줄에 정수 , , 이 주어집니다. 각각 플레이어 수와 게임 구간의 양 끝점입니다 (, ).
다음 줄에는 집의 좌표 정수 개가 주어집니다. 모든 는 을 만족합니다. 서로 다르며 오름차순으로 정렬되어 있습니다.
다음 줄에는 번째 플레이어가 안전 구역 밖에서 살아 있을 수 있는 시간 정수 개가 주어집니다 ().
출력
개의 줄을 출력합니다. 번째 줄에는 번째 플레이어가 우승할 확률을 출력합니다. 각 수의 절대 오차는 를 넘지 않아야 합니다.