아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

결정타

시간 제한2초메모리 제한256 MB

요약
각 무기(n개의 f면 주사위와 보정치 m)에 대해 한 번의 공격이 피해 D 이상을 줄 확률을 구하고, 모든 무기 중 최댓값을 출력한다.
난이도

보통10점 중 6점

유형
동적 계획법, 확률, 수학, 구현
정답자
아직 제출이 없습니다

문제

Khodislav는 D&D를 하고 있다. 지금 그의 캐릭터는 몬스터와 싸우고 있고, Khodislav는 자신의 공격을 이상하리만치 확신하며 마지막 결정타로 적을 끝장내려 한다. 캐릭터는 여러 무기를 가지고 있는데, 이 무기들이 줄 수 있는 피해는 주사위를 굴려 정해지며 세 수 nn, ff, mm으로 나타낸다. 여기서 nn은 주사위의 개수, ff는 주사위의 면 수, mm은 보정값이다. 예를 들어 n=3n = 3, f=8f = 8, m=5m = 5라면 8면체 주사위 세 개를 굴려 나온 눈의 합에 5를 더해 피해를 정하며, 보통 3d8+53d8 + 5라고 쓴다.

몬스터를 끝장내려면 무기가 DD 이상의 피해를 줘야 한다. Khodislav가 몬스터를 죽일 확률이 최대가 되는 무기를 고르도록 도와주자.

주사위를 굴린 결과는 서로 독립이고, 주사위의 각 면이 나올 확률은 같다. 주사위의 각 면에는 11부터 ff까지의 수가 하나씩 적혀 있다.

입력

입력 파일의 첫째 줄에 정수 TT가 주어진다. 이는 테스트의 수이다(1≤T≤5 0001 \le T \le 5\,000). 이어서 TT개의 테스트가 주어진다.

테스트의 첫째 줄에는 두 정수 WW와 DD가 주어진다. WW는 캐릭터가 가진 무기의 수, DD는 몬스터를 끝장내는 데 필요한 최소 피해이다(1≤W≤5 0001 \le W \le 5\,000, 1≤D≤2501 \le D \le 250).

다음 WW개 줄에 무기가 하나씩 주어진다. 각 줄에는 세 정수 nn, ff, mm이 주어진다. nn은 주사위의 개수, ff는 주사위의 면 수, mm은 보정값이다(1≤n≤101 \le n \le 10, 2≤f≤202 \le f \le 20, −10≤m≤10-10 \le m \le 10).

모든 테스트의 무기 수 합은 5 0005\,000을 넘지 않는다.

출력

각 테스트마다 한 번의 공격으로 DD 이상의 피해를 줄 최대 확률을 한 줄에 실수로 출력한다. 답의 절대 오차는 10−1110^{-11}을 넘지 않아야 한다.

예제2

  1. 예제 1

    입력
    2
    2 2
    1 20 -3
    2 2 0
    1 11
    1 20 -10
    
    예상 출력
    1
    0
    
  2. 예제 2

    입력
    3
    1 6
    1 6 0
    1 7
    2 6 0
    1 100
    10 20 10
    
    예상 출력
    0.166666666666667
    0.583333333333333
    0.799600378342187