首页 > 其他 > 详细

坐标离散化

时间:2018-04-12 18:31:43      阅读:183      评论:0      收藏:0      [点我收藏+]
int compress(int *x1,int *x2,int w){
   vector<int> xs;
   for(int i=0;i<N;i++){
     for(int d=-1;d<=1;d++){
        int tx1=x1[i]+d,tx2=x2[i]+d;
        if(1<=tx1&&tx1<=w) xs.push_back(tx1);
        if(1<=tx2&&tx2<=w) xs.push_back(tx2);
     }
   }
   sort(xs.begin(),xs.end());
   xs.erase(unique(xs.begin(),xs.end()),xs.end());
   for(int i=0;i<N;i++){
     x1[i]=find(xs.begin(),xs.end(),x1[i])-xs.begin();
     x2[i]=find(xs.begin(),xs.end(),x2[i])-xs.begin();
   }
   return xs.size();
}

 

坐标离散化

原文:https://www.cnblogs.com/lmjer/p/8809523.html

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