题意:
求一个区间内所有数的积模一个素数的值,会动态改变其中的值。
题解:
可以用线段树,网上大部分搜到的都是线段树。
YY的一个方法:对所有数取对数,放进树状数组里,对于求[l,r]的积可以e^( (q(r)-q(l-1)) fmod log(MOD) ),极大的精度误差基本上一个点都过不了,= =!
多校的解题报告里:
对于求[l,r]的积可以q(r)*inv(q(l-1)),inv(x)为求x关MOD的逆元,注意更新的时候也是把(待更新的值*原值的逆元)更新进去。
题意:
求一个区间内所有数的积模一个素数的值,会动态改变其中的值。
题解:
可以用线段树,网上大部分搜到的都是线段树。
YY的一个方法:对所有数取对数,放进树状数组里,对于求[l,r]的积可以e^( (q(r)-q(l-1)) fmod log(MOD) ),极大的精度误差基本上一个点都过不了,= =!
多校的解题报告里:
对于求[l,r]的积可以q(r)*inv(q(l-1)),inv(x)为求x关MOD的逆元,注意更新的时候也是把(待更新的值*原值的逆元)更新进去。