问题:
Description
There
is N pairs of balls in a small box. That means the number for each
pair is the same. However, for some reason, a ball is lost. Now, you
will get the number of the rest. Can you find the number of the lost
ball as fast as possible?
Input
The
input consists of several test cases. For each case, the first line
contains an integer N(1<= N <= 500000), the total number of
toys in the field. Then a line follow, which contains 2*N-1 numbers,
which will is positive and not exceed 2*10^9. The input is terminated
by N=0.
Output
For
each test case, print in one line the number of the lost ball.
Sample
Input
3
2
4 5 4 5
5
199
342 199 341 332 340 332 342 340
0
Sample
Output
2
341
思路:
对于如此多的输入数据(500000×2-1),进行全部存储是不可行的,部分存储也不现实,因为输入数据是随机顺序的。因此采用另一种思路,假设一种操作f,使得待求数xi = f(x1,x2,……xn)。加减乘除肯定不行,逻辑运算也不行,那么只剩下位运算,我们知道a^a(按位异或操作)=0,0^b=b,且按位异或满足交换律,那么,将所有输入数据按位进行异或操作,最后将得到待求数xi
代码:
#include <stdio.h>
int main(){
unsigned long int n,p,q;
while(1){
scanf("%d", &n);
if(n==0)
break;
p=0;
for(int i=0;i<2*n-1;i++){
scanf("%d",&q);
p=p^q;
}
printf("%d\n",p);
}
return 0;
}
分享到:
相关推荐
BOJ的题目1023. Ancient Keyboard解法 源代码
在本项目"BOJ-problem-solving:알고리즘스터디"中,我们主要关注的是通过解决在线编程挑战网站BOJ(Baekjoon Online Judge)上的问题来提升算法能力。这个学习计划覆盖了几个关键的算法概念,包括堆栈、基本宽度...
【标题】"boj 0809复试模拟题答案"指的是BOJ(Bubble Oxygen Judge)平台上2008年和2009年研究生复试阶段的模拟试题解答。BOJ是一个面向计算机科学与信息技术领域,尤其是算法竞赛和ACM(国际大学生程序设计竞赛)的...
"Algorithm-BOJ.zip"这个压缩包文件,显然是一份关于算法学习与实践的资源集合,特别关注了在BekJon在线法官平台上使用Java,Kotlin,以及SWIFT三种编程语言进行算法挑战。 BekJon在线法官(BOJ,Bewket Online ...
【标题】:“BOJ:算法” BOJ,全称“Baekjoon Online Judge”,是一个源自韩国的在线编程挑战平台,特别注重算法的实践与学习。在这个平台上,用户可以找到各种难度级别的算法题目,通过编写代码来解决这些题目,...
本文将围绕"Algorithm-BOJ-PSJ.zip"这个压缩包,探讨如何利用Java在Baykon平台上解决算法问题。 "Algorithm-BOJ-PSJ.zip"这个名字暗示了其内容可能包含一系列与算法相关的Java代码,可能是针对Baykon平台上的问题...
在本压缩包"Algorithm-boj-auto-submit.zip"中,包含的“boj-auto-submit-master”可能是一个针对日本在线算法竞赛平台(如日本编码奥林匹克,BOJ - BatchOJ)的命令行接口(CLI)自动提交脚本。这个脚本可能是为了...
【标题】"BOJ"指的是日本银行,即日本的中央银行。日本银行(Bank of Japan,简称BOJ)是日本的货币发行机构和宏观经济政策决策机关,负责制定和执行货币政策,维护金融系统的稳定。它的主要任务包括控制货币供应量...
【标题】"BOJ:BOJ解决方案代码的空间" 指的是在BOJ(Bullshit OJ,或称为Bullshit Online Judge)这个在线编程平台上,用户们存放和分享他们解决问题的C++代码的空间。BOJ是一个练习和提交算法问题解决方案的平台,...
【JAVA_BOJ】是一个与Java编程相关的项目,很可能是一个在线编程挑战平台的代码库,比如“Bubble Online Judge”(BOJ)的Java实现。在这个项目中,开发者可能使用Java语言来设计和实现算法,解决各种计算机科学问题...
Algorithm-BOJ-AutoCommit.zip,当您解决baekjoon online judge的问题时,它会自动提交并推送到远程存储库。,算法是为计算机程序高效、彻底地完成任务而创建的一组详细的准则。
"boj"通常指的是"BOJ (Baltic Online Judge)",这是一个在线编程竞赛平台,主要面向学生和编程爱好者,用于提高编程技能和解决问题的能力。在这个平台上,用户可以提交用不同编程语言(包括Python)编写的代码来解决...
【标题】"BOJ:BOJ源代码(python3)" 指的是在Baekjoon Online Judge(BOJ)平台上使用Python3语言编写的算法解决方案。BOJ是一个在线编程竞赛平台,提供了大量的算法题目供用户练习和挑战,旨在提升编程技能和算法...
资源分类:Python库 所属语言:Python 资源全名:boj-0.0.1.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
【标题】"boj.kr:解决boj.kr的问题" 指的是在Boj.kr这个在线编程平台上遇到的挑战或技术难题。Boj.kr是一个流行的学习和竞技编程平台,主要支持C++等编程语言,用户可以在这里提交代码,解决各种算法问题。 【描述...