四边形不等式
解决形如这样的DP式子的问题
F
i
,
j
=
m
i
n
{
F
i
−
1
,
k
+
w
k
+
1
,
j
}
(
i
<
=
k
<
=
j
)
F_{i,j} = min\{{F_{i - 1,k} + w_{k + 1,j}}\}(i<=k<=j)
Fi,j=min{Fi−1,k+wk+1,j}(i<=k<=j)
或者是
F
i
,
j
=
m
i
n
{
F
i
−
1
,
k
,
F
k
+
1
,
j
}
+
w
i
,
j
(
i
<
=
k
<
=
j
)
F_{i,j} = min\{F_{i - 1,k},F_{k +1,j}\} + w_{i,j}(i<=k<=j)
Fi,j=min{Fi−1,k,Fk+1,j}+wi,j(i<=k<=j)
一般用于区间DP.
区间包含的单调性:
对于任意的
a
<
=
b
<
=
c
<
=
d
a<=b<=c<=d
a<=b<=c<=d,若
w
(
b
,
c
)
<
=
w
(
a
,
d
)
w(b,c)<=w(a,d)
w(b,c)<=w(a,d),则称
w
w
w具有区间包含的单调性.
四边形不等式:
对于任意的
a
<
=
b
<
=
c
<
=
d
a<=b<=c<=d
a<=b<=c<=d,若
w
(
a
,
c
)
+
w
(
b
,
d
)
<
=
w
(
b
,
c
)
+
w
(
a
,
d
)
w(a,c)+w(b,d)<=w(b,c)+w(a,d)
w(a,c)+w(b,d)<=w(b,c)+w(a,d),则称
w
w
w满足四边形不等式.
可以形象理解成交叉之和小于等于包含之和.
倘若上述的 w w w函数满足区间包含单调性和四边形不等式,则 F F F函数满足四边形不等式.
设
p
i
,
j
p_{i,j}
pi,j为
F
i
,
j
F_{i,j}
Fi,j最优时取得的下标.
若
F
i
,
j
F_{i,j}
Fi,j满足四边形不等式,则
p
i
,
j
p_{i,j}
pi,j单调.即
p
i
,
j
<
=
p
i
,
j
+
1
<
=
p
i
+
1
,
j
+
1
p_{i,j}<=p_{i,j+1}<=p_{i+1,j+1}
pi,j<=pi,j+1<=pi+1,j+1
得到这些信息后,
k
k
k的范围可以改写成
p
i
,
j
−
1
<
=
k
<
=
p
i
+
1
,
j
p_{i,j-1}<=k<=p_{i+1,j}
pi,j−1<=k<=pi+1,j
这样可以将复杂度优化至
O
(
N
2
)
O(N^2)
O(N2).
一般来讲,可以将决策点打表打出来观察是否每行每列均单调.
当然如果能手动证明四边形不等式也是极好的.