题目链接
题目解析
map容器与pair容器的灵活运用,差分与前缀和是题目核心。
#include <bits/stdc++.h>
using namespace std;
map<pair<int,int>,bool> e;
int c[10010];
int n,m,p,h;
int main()
{
cin >> n >> p >> h >> m;
for(int i = 0;i < m;++i){
int a,b;
cin >> a >> b;
if(a > b) swap(a,b);
if(e[make_pair(a,b)]) continue;
c[a + 1]--;
c[b]++;
e[make_pair(a,b)] = true;
}
for(int i = 1;i <= n;++i){
c[i] = c[i - 1] + c[i];
cout << c[i] + h << endl;
}
return 0;
}