离散化
int lsh{
int a[N],b[N];
int n,m,i;
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i],b[i]=a[i];
sort(b+1,b+1+n);
m=unique(b+1,b+1+n)-(b+1);
for(int i=1;i<=n;i++)
a[i]=lower_bound(b+1,b+1+m,a[i])-b;
for(int i=1;i<=n;i++)
cout<<a[i]<<' ';
}
Windows 与 linux 在 OI 中的区别
因为山东省 NOIP 比赛时的环境是 Windows,而评测时环境是 Linux,每年都会导致大量选手失分,所以这里简单的介绍一些这两者在 OI 比赛中的区别:
C/C++ 中64位整形在 Windows 下用 %I64d 读入,在Linux下则用 %lld 读入。
Linux 下栈空间为 8M ,而 Windows 下只有1M
C/C++ 中,Linux 下的 rand() 函数返回值在32位有符号整形范围内,Windows 下的 rand() 函数返回值在16位有符号整形范围内