题意:给出一棵树,每条边有一个权值,每次可以进行两种操作,第一种计算操作给出一个数y和结点u,v,计算y除以
从节点u到结点v之间所有数的商(向下取整),第二种操作是修改操作,将第i条边的权值修改为u。要求对于每一个询问输出结果。
思路:因为y分别除以(下取整)一条链上的所有数等价于y除以(下取整)这条链上所有数的积,所以可以用树链剖分来做,只不过数据范围比较大,用一个状态标记当前区间的积是否大于1e18,然后查询的时候类似如果大于1e18直接输出0即可,否则用y除以计算出来的乘积。
#include
#include
#include
#include
#include
#include
#include
#include