冷傲小猫咪

文章
5
资源
0
加入时间
3年0月21天

2016 大连网络赛 hdu 5869 Different GCD Subarray Query(gcd+树状数组)★ ★

题意:长度n的序列, m个询问区间[L, R], 问区间内的所有子段的不同GCD值有多少种.题解:考虑固定左端点的不同GCD值,只有不超过logA种, 所以事件点只有nlogA个. 那么离线处理, 按照区间右端点排序从小到大处理询问,用一个树状数组维护每个GCD值的最大左端点位置即可. 复杂度是O(nlogAlogn).这份题解里有两个难点:1、如何快速的离线化处理出固定的