首页 > 其他 > 详细

ACM模板——离散化

时间:2019-04-05 11:00:38      阅读:201      评论:0      收藏:0      [点我收藏+]
技术分享图片
//返回离散化后的宽度 W,不是vector<int> x的数组大小! 
int compress(vector<int>& x,int W)
{
    vector<int> xs;
    int N = x.size();
    _for(i,0,N)
        for(int d = -1;d <= 1;d ++)
        {
            int t1 = x[i]+d;
            if(1<=t1 && t1<=W)
                xs.pb(t1);
        }
        
    sort(xs.begin(),xs.end());
    xs.erase(unique(xs.begin(),xs.end()),xs.end());
    _for(i,0,N)
        x[i] = find(xs.begin(),xs.end(),x[i]) - xs.begin();
    return xs.size();
}
离散化

 核心思想:排序后去重

ACM模板——离散化

原文:https://www.cnblogs.com/Asurudo/p/10657984.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!