星星之火

离散化

void work(){//离散化 
    sort(lsh+1,lsh+lshh+1,cmp);
    p[0]=-1;
    for(int i=1,j=0;i<=lshh;i++)
    {
        if(*lsh[i]!=p[j]) p[++j]=*lsh[i];
        *lsh[i]=j;
    }
}

 

定义int *lsh[maxn],把要离散化的数据取地址(&)然后之前存进去,work一次就ok了

posted @ 2018-06-08 09:43  星星之火OIer  阅读(128)  评论(0编辑  收藏  举报