토벤머리 용사의 스타포스 강화

NYPC 2025 · Round 2-B

토벤머리 용사는 자신이 가장 아끼는 장비 아이템의 스타포스를 강화하던 중 가장 효과적으로 스타포스를 진행하는 방법이 궁금해졌다.

아이템은 00 이상 NN 이하의 정수 값 레벨을 갖는다. 아이템의 초기 레벨은 00이다.

이제 스타포스 강화의 진행 과정을 살펴보자. 레벨 ii (0iN10 \le i \le N - 1)의 아이템을 강화하기 위해서는 먼저 CiC_i의 비용을 지불해야 한다. 이후에는 다음 중 하나의 이벤트가 랜덤하게 발생한다:

편의상, Pi,i=0P_{i,\, i} = 0이라고 하자. Pi,0+Pi,1++Pi,N=1P_{i,\, 0} + P_{i,\, 1} + \cdots + P_{i,\, N} = 1이다. 즉, 강화 시에는 위의 NN가지 이벤트 중 정확히 하나의 이벤트가 발생한다.

강화를 시도하기 직전마다 최대 한 개의 하락 방지 쿠폰을 구입할 수 있는데, 이 쿠폰은 사용 직후의 강화에만 적용된다. 레벨 ii (1iN11 \le i \le N - 1)의 아이템을 강화하기 직전 구입할 수 있는 쿠폰은 다음과 같이 ii가지가 있다:

강화 비용과 강화 이벤트의 확률, 쿠폰의 비용, 그리고 목표 레벨 NN이 주어질 때, 최적의 전략을 사용하여 레벨 00의 아이템을 레벨 NN으로 강화하기 위한 비용의 기댓값의 최솟값을 구하시오.

입력 형식

첫 줄에 테스트 케이스의 수를 나타내는 양의 정수 TT가 주어진다. 그다음 줄부터 각 테스트 케이스에 대한 정보가 주어진다.

입력 제한

각 테스트 케이스에서의 NN11 이상 1515 이하이며, 모든 테스트 케이스에서의 NN의 합은 100100 이하이다.

각 테스트 케이스 안에서 모든 00 이상 N1N-1 이하인 ii에 대해,

을 만족한다.

출력 형식

각 테스트 케이스마다 한 줄에 하나씩 레벨 00의 장비 아이템을 레벨 NN으로 강화하기 위한 비용의 기댓값의 최솟값을 출력한다.

정답과 상대 오차가 10410^{-4} 이하라면 정답으로 인정된다.

예제 1

입력

1 1 3 0 1000000

출력

3

예제 2

입력

2 2 8 11 4 0 990000 10000 660000 0 340000 2 8 11 5 0 990000 10000 660000 0 340000

출력

51.6764705882 54.5008655511

예제 3

입력

1 3 291 447 992 8703 250915 310205 0 1000000 0 0 287837 0 712163 0 103122 367022 0 529856

출력

3626.412107746

채점 방식

입력 케이스들은 다음과 같은 종류로 구별되며, 한 종류의 케이스를 다 맞혀야 그 종류에 배정된 점수를 받을 수 있다.

종류 1: 5

N=1N = 1

종류 2: 11

N2N \le 2

종류 3: 28

Pi,i+2=Pi,i+3==Pi,N=0P_{i,\, i + 2} = P_{i,\, i + 3} = \cdots = P_{i,\, N} = 0

종류 4: 13

N5N \le 5

종류 5: 43

모든 입력 케이스가 주어진다.

해설