#P11873. 最大拟合
最大拟合
题目描述
在某一个平行世界里,小威是 Z 校的 ML 大佬,精通于各种机器学习模型。某一天,他在路上观察到了一只活泼的小狗,小狗的叫声忽高忽低,时断时续。小威很快就意识到了,小狗是不是在按照某种模式发出声音?于是乎在那一刹那,他毫不犹豫地认为,小狗发声的模式也可以通过机器学习获得。但是很遗憾,他只记住了某一段连续的小狗的叫声。如果用 代表小狗的清吠, 代表小狗的低吼,那么这段连续的叫声会被建模成一段 和 交织的序列……
此外,由于小威认为小狗是一种非常可爱专一但又健忘的动物,因此假定小狗的 attention 机制没有那么强,且在连续叫声中的第 个声音只会与第 和 个声音有关。为了方便建模,小威认为小狗的每一段连续叫声都会由两声清吠开始。
那么,他的目标是什么呢?虽然他希望能构建出一个能模拟小狗叫声的模型,但是数据少得让他"巧妇难为无米之炊"啊。因此,他觉得,只要能在他记住的唯一的一段连续叫声上最大拟合就可以了。
在数学上,我们假定最后的模型为 ,可以被视为一个值域为概率的映射,即
其中 表示序列的结束标志。例如 ,表示第 个声音是 , 第 个声音是 的情况下,第 个声音是 的概率是 。
另外,小威把这段包含 个声音的叫声序列称为 ,并把最大拟合目标定义为
其中, 不是任何叫声,仅代表叫声序列的结束标志。
由于最终结果可能过小,因此小威只需要你告诉他最大拟合结果的自然对数就好。
输入格式
输入包含一行一个字符串 ,含义如上所述。长度不超过 。
保证长度大于等于 2 且前两位必定为 。
输出格式
输出一行一个实数,代表最大拟合的结果的自然对数。
相对误差或绝对误差不超过 可视为结果正确。