map的妙用

#include<vector>
#include<map>
using namespace std;

int main(){
    int n;
    cin>>n;
    map<int,int>ans;
    vector<int>a(n+1),b(n+1);
    for(int i=1;i<=n;i++){
        cin>>a[i]>>b[i];
        ans[a[i]]+=1;
        ans[a[i]+b[i]]-=1;
    }
    int last=0;
    int laststa=0;
    int now=0;
    vector<int>answer(n+1);
    for(auto it:ans){
        now+=it.second;//cout<<now<<endl;
        answer[last]+=(it.first)-laststa;
        last=now;
        laststa=it.first;
    }
    for(int i=1;i<=n;i++)cout<<answer[i]<<" ";
    return 0;
}