CF1543C Need for Pink Slips

Description

After defeating a Blacklist Rival, you get a chance to draw $ 1 $ reward slip out of $ x $ hidden valid slips. Initially, $ x=3 $ and these hidden valid slips are Cash Slip, Impound Strike Release Marker and Pink Slip of Rival's Car. Initially, the probability of drawing these in a random guess are $ c $ , $ m $ , and $ p $ , respectively. There is also a volatility factor $ v $ . You can play any number of Rival Races as long as you don't draw a Pink Slip. Assume that you win each race and get a chance to draw a reward slip. In each draw, you draw one of the $ x $ valid items with their respective probabilities. Suppose you draw a particular item and its probability of drawing before the draw was $ a $ . Then, - If the item was a Pink Slip, the quest is over, and you will not play any more races. - Otherwise, 1. If $ a\leq v $ , the probability of the item drawn becomes $ 0 $ and the item is no longer a valid item for all the further draws, reducing $ x $ by $ 1 $ . Moreover, the reduced probability $ a $ is distributed equally among the other remaining valid items. 2. If $ a > v $ , the probability of the item drawn reduces by $ v $ and the reduced probability is distributed equally among the other valid items. For example, - If $ (c,m,p)=(0.2,0.1,0.7) $ and $ v=0.1 $ , after drawing Cash, the new probabilities will be $ (0.1,0.15,0.75) $ . - If $ (c,m,p)=(0.1,0.2,0.7) $ and $ v=0.2 $ , after drawing Cash, the new probabilities will be $ (Invalid,0.25,0.75) $ . - If $ (c,m,p)=(0.2,Invalid,0.8) $ and $ v=0.1 $ , after drawing Cash, the new probabilities will be $ (0.1,Invalid,0.9) $ . - If $ (c,m,p)=(0.1,Invalid,0.9) $ and $ v=0.2 $ , after drawing Cash, the new probabilities will be $ (Invalid,Invalid,1.0) $ . You need the cars of Rivals. So, you need to find the expected number of races that you must play in order to draw a pink slip.

Input Format

The first line of input contains a single integer $ t $ ( $ 1\leq t\leq 10 $ ) — the number of test cases. The first and the only line of each test case contains four real numbers $ c $ , $ m $ , $ p $ and $ v $ ( $ 0 < c,m,p < 1 $ , $ c+m+p=1 $ , $ 0.1\leq v\leq 0.9 $ ). Additionally, it is guaranteed that each of $ c $ , $ m $ , $ p $ and $ v $ have at most $ 4 $ decimal places.

Output Format

For each test case, output a single line containing a single real number — the expected number of races that you must play in order to draw a Pink Slip. Your answer is considered correct if its absolute or relative error does not exceed $ 10^{-6} $ . Formally, let your answer be $ a $ , and the jury's answer be $ b $ . Your answer is accepted if and only if $ \frac{|a - b|}{\max{(1, |b|)}} \le 10^{-6} $ .

Explanation/Hint

For the first test case, the possible drawing sequences are: - P with a probability of $ 0.6 $ ; - CP with a probability of $ 0.2\cdot 0.7 = 0.14 $ ; - CMP with a probability of $ 0.2\cdot 0.3\cdot 0.9 = 0.054 $ ; - CMMP with a probability of $ 0.2\cdot 0.3\cdot 0.1\cdot 1 = 0.006 $ ; - MP with a probability of $ 0.2\cdot 0.7 = 0.14 $ ; - MCP with a probability of $ 0.2\cdot 0.3\cdot 0.9 = 0.054 $ ; - MCCP with a probability of $ 0.2\cdot 0.3\cdot 0.1\cdot 1 = 0.006 $ . So, the expected number of races is equal to $ 1\cdot 0.6 + 2\cdot 0.14 + 3\cdot 0.054 + 4\cdot 0.006 + 2\cdot 0.14 + 3\cdot 0.054 + 4\cdot 0.006 = 1.532 $ .For the second test case, the possible drawing sequences are: - P with a probability of $ 0.4 $ ; - CP with a probability of $ 0.4\cdot 0.6 = 0.24 $ ; - CMP with a probability of $ 0.4\cdot 0.4\cdot 1 = 0.16 $ ; - MP with a probability of $ 0.2\cdot 0.5 = 0.1 $ ; - MCP with a probability of $ 0.2\cdot 0.5\cdot 1 = 0.1 $ . So, the expected number of races is equal to $ 1\cdot 0.4 + 2\cdot 0.24 + 3\cdot 0.16 + 2\cdot 0.1 + 3\cdot 0.1 = 1.86 $ .