http://acm.hdu.edu.cn/showproblem.php?pid=1698
如果更新到叶子节点会超时的
#include<iostream>
using namespace std;
const int N=100001,NN=3*N;
struct segtree
{
int left,right,num;
int mid()
{
return (left+right)/2;
}
}st[NN];
void build(int left,int right,int id)
{
st[id].left=left;
st[id].right=right;
st[id].num=1;
if(left==right)
return ;
int mid=st[id].mid();
build(left,mid,id*2);
build(mid+1,right,id*2+1);
}
void update(int left,int right,int x,int id)
{
if(left<=st[id].left&&right&