D 插入: 在当前指针位置sz处插入一个1,col[sz]记录插入的内容,sz++; 删除i: 找到第i个1的位置,赋为0; 于是转化为一个维护区间和的问题; trick: 如果是依次删除a[0],a[1]...a[k], 那么对应的删除操作应该为 a[0],a[1]-1,a[2]-2...a[k]-k,要把前面删掉的算进去; #define maxn 1000100 int bit[maxn],a[maxn],n,m,col[maxn],sz; int lowbit(int x){return