起始所有树全部置1,M区域内的树全部置零。注意数组长度应为10001
#include <iostream>
using namespace std;int main()
{
int tree[10001];
int l,m,a,b,i;
int ans=0;
cin>>l>>m;
for(i=0;i<=l;i++)
tree[i]=1;
while(m!=0)
{
cin>>a>>b;
for(i=a;i<=b;i++)
tree[i]=0;
m--;
}
for(i=0;i<=l;i++)
ans=ans+tree[i];
cout<<ans<<endl;
}
本文介绍了一种基于树状数组的数据结构实现方法,通过初始化数组并进行特定操作来解决问题。该方法首先将所有树状数组元素设为1,然后针对指定区域内的元素设置为0,并最终统计非零元素的数量。
336

被折叠的 条评论
为什么被折叠?



