Time Limit: 3 sec / Memory Limit: 1024 MB
配点: 1000 点
問題文
i = 1, 2, \dots, Q に対して、以下の問題を解いてください。
試験管に 3 種類の物質 A, B, C がそれぞれ a, b, c グラム入っているとき、次の 1 秒間で以下のような変化が起こります。
- 物質 A のうち aX_i グラムが物質 C に変化する
- 物質 B のうち bY_i グラムが物質 A に変化する
- 物質 C のうち cZ_i グラムが物質 B に変化する
すなわち、1 秒後の物質 A, B, C の量は、それぞれ a(1-X_i) + bY_i, b(1-Y_i) + cZ_i, c(1-Z_i) + aX_i グラムになります。
最初、試験管に物質 A, B, C が 1 グラムずつ入っています。T_i 秒後の物質 A, B, C の量がそれぞれ何グラムになるかを求めるプログラムを作成してください。
制約
- 1 \leqq Q \leqq 10^4
- 0 \leqq X_i, Y_i, Z_i \leqq 1
- 1 \leqq T_i \leqq 10^7
- X, Y, Z は実数で、最大で小数点以下 7 桁まで与えられる
- T は整数
入力
入力は以下の形式で標準入力から与えられます。
Q X_1 Y_1 Z_1 T_1 X_2 Y_2 Z_2 T_2 \vdots X_Q Y_Q Z_Q T_Q
出力
i \ (1 \leqq i \leqq Q) 番目の問題における、T_i 秒後の物質 A, B, C の量を a'_i, b'_i, c'_i とするとき、次の形式で出力してください。
a'_1 b'_1 c'_1 a'_2 b'_2 c'_2 \vdots a'_Q b'_Q c'_Q
ただし、正解との絶対誤差が 10^{-7} 以下であるような答えを出力すれば、正答とみなされます。
入力例 1
5 0.10 0.20 0.30 2 0.02 0.03 0.01 3 0.50 0.00 0.00 16 0.20 0.70 0.60 12345 1.00 1.00 1.00 10000000
出力例 1
1.210000000000000 1.120000000000000 0.670000000000000 1.027637000000000 0.942080000000000 1.030283000000000 0.000015258789062 1.000000000000000 1.999984741210938 1.852941176470589 0.529411764705882 0.617647058823530 1.000000000000000 1.000000000000000 1.000000000000000
まず、1 番目の問題 (X = 0.1, Y = 0.2, Z = 0.3, T = 2) では、次のように物質の量が変化していきます。
- 最初、物質 A, B, C の量はそれぞれ 1, 1, 1 グラム
- 1 秒後、物質 A, B, C の量はそれぞれ 1.1, 1.1, 0.8 グラムになる
- 2 秒後、物質 A, B, C の量はそれぞれ 1.21, 1.12, 0.67 グラムになる
次に、2 番目の問題 (X = 0.01, Y = 0.02, Z = 0.03, T = 3) では、次のように物質の量が変化していきます。
- 最初、物質 A, B, C の量はそれぞれ 1, 1, 1 グラム
- 1 秒後、物質 A, B, C の量はそれぞれ 1.01, 0.98, 1.01 グラムになる
- 2 秒後、物質 A, B, C の量はそれぞれ 1.0192, 0.9607, 1.0201 グラムになる
- 3 秒後、物質 A, B, C の量はそれぞれ 1.027637, 0.942080, 1.030283 グラムになる
残りの 3, 4, 5 番目の問題についても答えれば、正解となります。ただし、3 番目の物質 A の量を 1.525879e-5
といった指数形式で出力しないようにしてください。