CSP模拟50联测12 T2 赌神
Ps:超链接为衡水中学OJ。
思路
s u b t a s k 2 subtask2 subtask2:
由于 x i x_i xi较小,考虑 dp。
假设一开始球的颜色为红和蓝,设 d p [ i ] [ j ] dp[i][j] dp[i][j] 为剩 i i i 个红球, j j j 个蓝球时可获得的最大筹码数。
如果不同球掉落所获得的筹码不同,那么肯定会掉落最少筹码的那一堆球。所以保证各堆获得筹码相同时最优。
设蓝球堆放
x
x
x个筹码,红球堆放
y
y
y个筹码,则有:
d
p
[
i
]
[
j
]
=
2
x
∗
d
p
[
i
−
1
]
[
j
]
=
2
y
∗
d
p
[
i
]
[
j
−
1
]
(
n
=
2
)
dp[i][j]=2x*dp[i-1][j]=2y*dp[i][j-1] \ \ (n=2)
dp[i][j]=2x∗dp[i−1][j]=2y∗dp[i][j−1] (n=2)
易得每次把筹码投完比不投优。可得:
y
=
1
−
x
x
∗
d
p
[
i
−
1
]
[
j
]
=
(
1
−
x
)
d
p
[
i
]
[
j
−
1
]
y=1-x\\ x*dp[i-1][j]=(1-x)dp[i][j-1]
y=1−xx∗dp[i−1][j]=(1−x)dp[i][j−1]
解
x
x
x 得:
x
=
d
p
[
i
]
[
j
−
1
]
d
p
[
i
−
1
]
[
j
]
+
d
p
[
i
]
[
j
−
1
]
x=\frac{dp[i][j-1]}{dp[i-1][j]+dp[i][j-1]}
x=dp[i−1][j]+dp[i][j−1]dp[i][j−1]
所以
d
p
[
i
]
[
j
]
=
2
x
∗
d
p
[
i
−
1
]
[
j
]
=
2
d
p
[
i
]
[
j
−
1
]
d
p
[
i
−
1
]
[
j
]
d
p
[
i
]
[
j
−
1
]
+
d
p
[
i
−
1
]
[
j
]
dp[i][j]=2x*dp[i-1][j]=\frac{2dp[i][j-1]dp[i-1][j]}{dp[i][j-1]+dp[i-1][j]}
dp[i][j]=2x∗dp[i−1][j]=dp[i][j−1]+dp[i−1][j]2dp[i][j−1]dp[i−1][j]
s u b t a s k 3 subtask3 subtask3:
任然考虑 n = 2 n=2 n=2 的情况,设 f [ i ] [ j ] = d p [ i ] [ j ] 2 i + j f[i][j]=\frac{dp[i][j]}{2^{i+j}} f[i][j]=2i+jdp[i][j]。
将
d
p
[
i
]
[
j
]
dp[i][j]
dp[i][j] 通过
s
u
b
t
a
s
k
2
subtask2
subtask2 中的方程化简,得:
f
[
i
]
[
j
]
=
f
[
i
−
1
]
[
j
]
f
[
i
]
[
j
−
1
]
f
[
i
]
[
j
−
1
]
+
f
[
i
−
1
]
[
j
]
f[i][j]=\frac{f[i-1][j]f[i][j-1]}{f[i][j-1]+f[i-1][j]}
f[i][j]=f[i][j−1]+f[i−1][j]f[i−1][j]f[i][j−1]
同时取倒数,并裂项得:
1
f
[
i
]
[
j
]
=
f
[
i
]
[
j
−
1
]
+
f
[
i
−
1
]
[
j
]
f
[
i
−
1
]
[
j
]
f
[
i
]
[
j
−
1
]
=
1
f
[
i
]
[
j
−
1
]
+
1
f
[
i
−
1
]
[
j
]
\frac{1}{f[i][j]}=\frac{f[i][j-1]+f[i-1][j]}{f[i-1][j]f[i][j-1]}=\frac{1}{f[i][j-1]}+\frac{1}{f[i-1][j]}
f[i][j]1=f[i−1][j]f[i][j−1]f[i][j−1]+f[i−1][j]=f[i][j−1]1+f[i−1][j]1
不难发现
f
[
i
]
[
j
]
f[i][j]
f[i][j] 为在二维平面内由
(
0
,
0
)
(0,0)
(0,0) 走向
i
,
j
i,j
i,j 的方案数,所以
f
[
i
]
[
j
]
=
(
i
+
j
i
)
f[i][j]=\dbinom{i+j}{i}
f[i][j]=(ii+j)。
s u b t a s k 4 subtask4 subtask4
其实 n > 2 n>2 n>2 时也有上述性质,那么 f ( x 1 , x 2 , ⋯ , x n ) f(x_1,x_2,\cdots,x_n) f(x1,x2,⋯,xn) 为 n n n 维平面内从 ( 0 , 0 , 0 , ⋯ , 0 ) (0,0,0,\cdots,0) (0,0,0,⋯,0) 走到 ( x 1 , x 2 , ⋯ , x n ) (x_1,x_2,\cdots,x_n) (x1,x2,⋯,xn) 的方案数。
那么 f ( x 1 , x 2 , ⋯ , x n ) = ( ∑ i = 1 n x i x n ) ∗ ( ∑ i = 1 n − 1 x i x n − 1 ) ∗ ⋯ ∗ ( x 1 x 1 ) f(x_1,x_2,\cdots,x_n)=\dbinom{\sum_{i=1}^n x_i}{x_n}*\dbinom{\sum_{i=1}^{n-1}x_i}{x_{n-1}}*\cdots*\dbinom{x_1}{x_1} f(x1,x2,⋯,xn)=(xn∑i=1nxi)∗(xn−1∑i=1n−1xi)∗⋯∗(x1x1)。
展开,得:
f
(
x
1
,
x
2
,
⋯
,
x
n
)
=
∑
i
=
1
n
x
i
x
n
!
∑
i
=
1
n
−
1
x
i
∗
∑
i
=
1
n
−
1
x
i
x
n
−
1
!
∑
i
=
1
n
−
2
x
i
∗
⋯
∗
1
f(x_1,x_2,\cdots,x_n)=\frac{\sum_{i=1}^n x_i}{x_n!\sum_{i=1}^{n-1}x_i}*\frac{\sum_{i=1}^{n-1} x_i}{x_{n-1}!\sum_{i=1}^{n-2}x_i}*\cdots*1
f(x1,x2,⋯,xn)=xn!∑i=1n−1xi∑i=1nxi∗xn−1!∑i=1n−2xi∑i=1n−1xi∗⋯∗1
发现每一项的分子与后一项的分母都存在共同部分,再次化简,得:
f ( x 1 , x 2 , ⋯ , x n ) = ( ∑ i = 1 n x i ) ! ∏ i = 1 n x i ! f(x_1,x_2,\cdots,x_n)=\frac{(\sum_{i=1}^n x_i)!}{\prod_{i=1}^n x_i!} f(x1,x2,⋯,xn)=∏i=1nxi!(∑i=1nxi)!
于是答案为 n x 1 + x 2 + ⋯ + x n f ( x 1 , x 2 , ⋯ , x n ) \frac{n^{x_1+x_2+\cdots+x_n}}{f(x_1,x_2,\cdots,x_n)} f(x1,x2,⋯,xn)nx1+x2+⋯+xn。