差分裸题
所用知识:
- 差分:快速修改一段区间的值
- 对差分数组求一遍前缀和即得原数组
#include <iostream>
using namespace std;
const int N = 100010;
int n,q;
int b[N];
void insert(int l,int r)
{
b[l] += 1;
b[r+1] -= 1;
}
int main()
{
cin >> n >> q;
while(q--)
{
int l,r;
cin >> l >> r;
insert(l,r);
}
for(int i=1;i<=n;i++)
b[i] += b[i-1], cout<<b[i]<<" ";
return 0;
}