对于每一个aiai,都有一段区间,表示在这一段区间里,aiai是最大的,也就是说,max值是一样的,那么只需要算出这一段区间里的子gcd和,再乘以aiai,就是这一段的贡献值。 因为是对于gcd来说的,在求所有数的gcd时,每次加入一个a[i]a[i],就会使得gcd不变或者变小。而ST也是如此,那么可以利用ST表来维护所有区...