本文主要是介绍ACM/STEPS find your presents(2),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
整数的异或是先把它们化成二进制,再按位异或。比如3^5, 3=011,5=101,两数按位异或后为
110,即6。
几个数异或满足交换律。2^3^2=2^2^3=0^3=3.
两个相同的数异或为0,普通数都出现了偶数次,所以它们异或后都是0,而0与那个特别数异或后还是那个特殊数。
用的这样的运算后就看起来很简单了
using namespace std;
int main()
{
int n;
while(cin>>n,n)
{
int m = 0, a;
while(n--)
{
cin >> a;
m = m ^ a;
}
cout<<m<<endl;
}
return 0;
}
这篇关于ACM/STEPS find your presents(2)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!