Description
年级第一的小学生 Fkb 因为上数学课睡觉被老师点名,老师在黑板上写下了一个序列, 让 Fkb 在相邻两个数之间填上中的某一个,并让 Fkb 计算所有可能的序列的答案之和, Fkb 很轻松就答出来的。老师又每次修改某个 ,并让 Fkb 快速求出每次修改之后的答案,由于修改实在是太多了, Fkb 只好求助于你。结果对于1e9 + 7取模。
Solution
考虑算这个东西,你会发现所有形如这样的式子都是没有贡献的:,因为可以填,在总答案中就没有贡献
只有从开始的式子是有贡献的,因为前填不了符号
对于它出现的次数是,也即前面j个只能选,第j+1个只能选
考虑动态,你就是要维护n个式子的和
如果你改,就会对前i个式子产生影响,你直接对前i个式子除掉,再乘上新的,用线段树维护即可
Code
1 |
|