Description
你要输入一段长为
N
的字符串,输错第
N≤3000
Analysis
观察打字时的过程,比如当前从
i
开始打,然后检查,倒回来删到第一个错的地方
那这样我们的
fi
设的是从
i
开始输入,输入到结尾的最小期望步数,那么
显然
calc(i,j)=pi(fi+j−i+1)+(1−pi)pi+1(fi+1+j−i)+⋯+(1−pi)⋯(1−pj)fj+1
。
这样的时间复杂度是
O(N3)
的,然而枚举
k
可以省掉,很轻松地达到