또 다른 주사위 게임

시간 제한1초메모리 제한128 MB

요약
주사위, 따로 빼기, 웜 규칙이 주어진 픽오미노에서 최적 전략으로 목표 점수 n에 도달할 확률을 계산한다.
난이도

어려움10점 중 8점

유형
동적 계획법, 확률, 그리디, 게임 이론
정답자
아직 제출이 없습니다

문제

게임 피코미노(Pickomino, 네덜란드에서는 Regenwormen으로도 불린다)에서는 주사위 8개를 굴려 목표 점수 이상을 얻어야 한다. 규칙은 다음과 같다.

  • 각 주사위의 면에는 1, 2, 3, 4, 5, 그리고 지렁이(worm)가 있다. 주사위는 공정하여 모든 결과가 같은 확률로 나온다.
  • 게임은 모든 주사위를 굴리며 시작한다.
  • 한 번 굴린 뒤에는 나온 여섯 종류의 값 중 하나를 골라, 그 값이 나온 주사위를 모두 따로 빼 둔다. 고른 값이 나온 주사위가 적어도 하나는 있어야 한다.
  • 주사위를 빼 둔 뒤에는 남은 주사위를 다시 굴리거나 멈출 수 있다. 단, 지렁이를 적어도 하나 빼 둔 뒤에만 멈출 수 있다.
  • 각 값은 게임 중 한 번만 고를 수 있다.
  • 멈추면 빼 둔 주사위 값의 합이 총 점수가 된다. 지렁이는 5점이다.
  • 다음 세 경우 중 하나라도 해당하면 플레이어는 막혀서 더 진행할 수 없다: 이미 빼 둔 값만 나온 경우, 모든 주사위를 뺐지만 지렁이가 하나도 없는 경우, 목표 점수에 도달하지 못한 경우.
  • 막히면 0점을 얻고 게임이 끝난다.

Jan은 이 게임에서 적어도 nn점을 얻으려 한다. Jan이 최적 전략을 사용할 때, 목표에 도달할 확률은 얼마인가?

입력

첫 줄에 테스트 케이스의 개수(양의 정수, 최대 100)가 주어진다.

이후 각 테스트 케이스마다 한 줄에 목표 점수인 정수 nn (1≤n≤401 \le n \le 40)이 주어진다.

출력

각 테스트 케이스마다 한 줄에, 최적 전략을 사용할 때 적어도 nn점을 얻을 확률을 소수점 아래 정확히 10자리로 반올림하여 출력한다.

힌트

5점에 도달하려면 지렁이를 적어도 하나 굴리면 충분하다. 따라서 이 경우 최적 전략은 지렁이가 나오는 즉시 멈추는 것이다. 지렁이가 나오지 않았다면, 이후 굴림에서 지렁이가 나올 확률을 최대화하기 위해 되도록 적은 수의 주사위만 빼 두어야 한다.

예제5

  1. 예제 1

    입력
    3
    5
    21
    40
    
    예상 출력
    0.9934260979
    0.8930267372
    0.0001461079
    
  2. 예제 2

    입력
    1
    1
    
    예상 출력
    0.9934260979
    
  3. 예제 3

    입력
    1
    40
    
    예상 출력
    0.0001461079
    
  4. 예제 4

    입력
    1
    6
    
    예상 출력
    0.9934247686
    
  5. 예제 5

    입력
    6
    10
    15
    20
    25
    30
    35
    
    예상 출력
    0.9932673272
    0.9860079561
    0.9188722841
    0.6803307112
    0.2637895195
    0.0289075054