给定一个数组A(比如A [1..n] = {1,2,3}) 现在我想要两个查询:
1)更新(idx,val):更新A [idx] = val
的值2)int Query(MOD).....
int Query(int MOD) : // say MOD =2 , so 1%2 +2%2 + 3%2 =2
int ans=0;
for i=1 to i=n
ans+=(A[i]%MOD);
return ans;
我想到Fenwick树的索引是MOD的所有可能值,但问题是我没有持续更新,因为A [i]%MOD对于每个A [i]可能不同?我该如何有效地做到这一点?