離散化模板
阿新 • • 發佈:2017-07-10
namespace ret ios isp algorithm aps pla amp class
1 #include<iostream> 2 #include<cstdio> 3 #include<algorithm> 4 using namespace std; 5 const int maxn=100000; 6 int a[maxn]; 7 int b[maxn]; 8 int n; 9 int main() 10 { 11 int m=0; 12 cin>>n;//元素個數 13 for(int i=1;i<=n;++i) 14 { 15 scanf("%d",&a[i]);View Code16 b[++m]=a[i];//b[]作為離散化的數組 17 } 18 sort(b+1,b+1+m);//將b數組排序,因為是從b[1]開始存儲的,所以要b+1 19 m=unique(b+1,b+1+m)-b-1;//去重操作,返回不同元素的個數 20 for(int i=1;i<=n;++i) 21 cout<<lower_bound(b+1,b+1+m,a[i])-b<<" "; 22 // while(1); 23 return 0; 24 }
轉自http://blog.csdn.net/Cirspring/article/details/51836776
離散化模板