SP19146 INS14E - Glorious Gamblers
题目描述
2012年,Digo 和 Tourist 在为 CIA 任务培训的过程中成为了好朋友。Digo 是个怀疑论者,相信当年世界会终结,而 Tourist 则认为这毫无道理。在多次争论无果后,他们决定打赌,然后继续训练。
到了2014年,他们在首次任务中再次相遇。很显然,Digo 的预言错了,现在是他兑现赌注的时候。由于两人都是优秀的程序员,他们决定通过一个游戏来解决赌注问题。Digo 应支付给 Tourist 的金额可以用一个 \( M \times N \) 的矩阵 \( A \) 来表示,其中每个元素都是正整数。
游戏规则是这样的:他们在矩阵的起点 (1,1) 放置一个环,游戏在环到达终点 (M,N) 时结束。当环在位置 (i,j) 时,他们抛一枚公平硬币。若是正面朝上,则 Digo 移动环;若是反面朝上,则 Tourist 移动环。在每一次移动中,环可以从当前位置 (i,j) 移动到东方、南方或东南方的相邻单元格,且无法移出矩阵的边界。
在整个移动过程中,Digo 走过路径上的每个单元格数值总和便是他需支付给 Tourist 的金额。Digo 希望通过努力最小化这一总和,而 Tourist 则希望最大化这一数值。
请帮 Digo 计算在游戏结束时,他需支付给 Tourist 的期望金额,并要精确到小数点后6位。
注意:输入量较大,请使用快速的I/O方法。
输入格式
第一行包含一个整数 \( T \),表示测试用例的数量。
对于每个测试用例:
- 第一行包括两个整数 \( M \) 和 \( N \),表示矩阵的尺寸。
- 接下来的 \( M \) 行中,每行包含 \( N \) 个整数,表示矩阵 \( A \) 的元素值。
输出格式
对于每个测试用例,输出一个结果,即Digo在游戏结束时需支付给Tourist的期望金额,精确到小数点后6位。
说明/提示
- \( 1 \leq T \leq 10 \)
- \( 2 \leq M, N \leq 500 \)
- \( 0 \leq A[i][j] \leq 10^6 \)
## 样例输入
```
1
2 3
1 2 2
3 5 1
```
## 样例输出
```
8.250000
```
**本翻译由 AI 自动生成**