离散化模板
//离散化从1开始
sort(lsh+1,lsh+1+n);
len=unique(lsh+1,lsh+1+n)-(lsh+1);
for(int i=1;i<=n;i++) a[i]=getval(a[i]);//更改a[i]的值,保留lsh存原数
getval函数
int getval(int x)
{
return lower_bound(lsh+1,lsh+1+len,x)-lsh;
}
//离散化从1开始
sort(lsh+1,lsh+1+n);
len=unique(lsh+1,lsh+1+n)-(lsh+1);
for(int i=1;i<=n;i++) a[i]=getval(a[i]);//更改a[i]的值,保留lsh存原数
getval函数
int getval(int x)
{
return lower_bound(lsh+1,lsh+1+len,x)-lsh;
}