位运算;去重函数unique及解析;
可以提前学一下,计算机组成原理会讲,最好提前学一下,程序设计竞赛很多技巧题或者卡时间的都需要用到二进制,二进制运算在计算机中是最快的运算。
**去重(去除重复的数据)
#include
#include
using namespace std;
int my_unique(int a[],int n)
{
int i=1,j=1;
while(j<n)
{
if(a[j]!=a[j+1]) a[i++]=a[j++];
else j++;
}
return i;
}
int a[100];
int main()
{
int n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i];
}
sort(a,a+n);
int len=my_unique(a,n);
for(int i=0;i<len;i++)
cout<<a[i]<<" ";
}
或者
#include<bits/stdc++.h> //万能头文件,妈妈再也不用担心我,因头文件缺失而产生报错,竞赛偷懒提速
using namespace std;
a_idx=unique(a,a+a_idx)-a;