现在的位置: 首页 > 综合 > 正文

NYOJ-528 找球号(三)【位运算】

2013年10月21日 ⁄ 综合 ⁄ 共 505字 ⁄ 字号 评论关闭

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=528

解题思路:

给你2个数,怎么判断它是否出现偶数次?

对1个数异或另一个数2次等于本身。

代码如下:

#include<iostream>
#include<cstring>
#include<cstdio>
#include<map>
#include<cmath>
#include<algorithm>
using namespace std;

int Scan()
{
	int res = 0 , ch;
	while( !( ( ch = getchar() ) >= '0' && ch <= '9' ) )
	{
		if( ch == EOF )  return 1 << 30 ;
	}
	res = ch - '0' ;
	while( ( ch = getchar() ) >= '0' && ch <= '9' )
		res = res * 10 + ( ch - '0' ) ;
	return res ;
}

int main()
{
	int n, temp, x;
	while(scanf("%d", &n) != EOF)
	{
		temp = 0;
		for(int i = 0; i < n; ++i)
		{
			x = Scan();
			temp ^= x;
		}
		printf("%d\n", temp);
	}
	return 0;
}

抱歉!评论已关闭.