<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">我之前写的是</span><span style="font-family: Arial, Helvetica, sans-serif; color: green; background-color: rgb(255, 255, 255);">Memory Limit Exceeded,但是感觉方法很对,运行结果也很正确。</span>

//此思路是:设总个数是n ,从第一个数开始,分别与其它数进行比较,如果不同的话,count++(count初值为0),如果相同的话,直接break(判断下一个数,与其它数的关系)。如果此数与其它数比完了,count==n-1,说明此数是独一无二的一个,输出来即可,根据题意,就不用再进行下一个数的判断了,加上break。

代码是:

#include<iostream>
#include<stdio.h>
using namespace std;
int a[1000000];
int main()
{
int i,j,n,count;
while(scanf("%d",&n),n)
{
for(i=0;i<n;i++)
cin>>a[i];
for(i=0;i<n;i++)
{
count=0;
for(j=0;j<n;j++)
{
if(i!=j &&a[i]!=a[j])
{
count++;
}
if(i!=j &&a[i]==a[j])
break;
}
if(count==n-1)
{
printf("%d\n",a[i]);
break;
}
}
}
return 0;
}

出现这种原因应该是数组定义的过长,循环次数太多造成的。百度了一下,这道题,是算异或的。。输入的每个数都按位异或起来,得到的结果就是不同的那个数。(昨天改这个程序的时候,我又定义了数组a,长度是1000000的,直接可一次性的输入,但是又是Memory Limit Exceeded,  让陈涛涛看一下,他说,可以一个一个输入,输入一个,异或的结果放到result里……最后正确了……)

异或怎么算,http://blog.csdn.net/tangyanzhi1111/article/details/21696943  这里面介绍很详细。。

此题正确的代码:

#include<iostream>
#include<stdio.h>
using namespace std;
int main()
{
int n,i,a;
while(scanf("%d",&n),n)
{
int result=0;
while(n--)
{
cin>>a;
result=result^a;
}
printf("%d\n",result);
}
return 0;
}

												

杭电oj find your present (2)的更多相关文章

  1. C#利用POST实现杭电oj的AC自动机器人,AC率高达50%~~

    暑假集训虽然很快乐,偶尔也会比较枯燥,,这个时候就需要自娱自乐... 然后看hdu的排行榜发现,除了一些是虚拟测评机的账号以外,有几个都是AC自动机器人 然后发现有一位作者是用网页填表然后按钮模拟,, ...

  2. 杭电oj 2095 & 异或^符号在C/C++中的使用

    异或^符号,在平时的学习时可能遇到的不多,不过有时使用得当可以发挥意想不到的结果. 值得注意的是,异或运算是建立在二进制基础上的,所有运算过程都是按位异或(即相同为0,不同为1,也称模二加),得到最终 ...

  3. 用python爬取杭电oj的数据

    暑假集训主要是在杭电oj上面刷题,白天与算法作斗争,晚上望干点自己喜欢的事情! 首先,确定要爬取哪些数据: 如上图所示,题目ID,名称,accepted,submissions,都很有用. 查看源代码 ...

  4. 杭电oj 4004---The Frog Games java解法

    import java.util.Arrays; import java.util.Scanner; //杭电oj 4004 //解题思路:利用二分法查找,即先选取跳跃距离的区间,从最大到最小, // ...

  5. 『ACM C++』HDU杭电OJ | 1415 - Jugs (灌水定理引申)

    今天总算开学了,当了班长就是麻烦,明明自己没买书却要带着一波人去领书,那能怎么办呢,只能说我善人心肠哈哈哈,不过我脑子里突然浮起一个念头,大二还要不要继续当这个班委呢,既然已经体验过就可以适当放下了吧 ...

  6. 杭电oj————2057(java)

    question:A+ B again 思路:额,没啥思路/捂脸,用java的long包里的方法,很简单,只是有几次WA,有几点要注意一下 注意:如果数字有加号要删除掉,这里用到了正则表达式“\\+” ...

  7. 爬取杭电oj所有题目

    杭电oj并没有反爬 所以直接爬就好了 直接贴源码(参数可改,循环次数可改,存储路径可改) import requests from bs4 import BeautifulSoup import ti ...

  8. 杭电OJ——1198 Farm Irrigation (并查集)

    畅通工程 Problem Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇.省政府"畅通工程"的目标是使全省任何两个城镇间都可 ...

  9. 杭电OJ——1007 Quoit Design(最近点对问题)

    Quoit Design Problem Description Have you ever played quoit in a playground? Quoit is a game in whic ...

随机推荐

  1. VS插件

    VS插件 背景 前些天去考科目二,感觉经历了一场不是高考却胜似高考的考试(10年前的5分之差, 还是难以释怀)!    一行八人,就我学的时间最少(4天,8人一辆车),教练都觉得我肯定还得再来一次! ...

  2. AAU账号分割

    import win.ui; import fsys.dlg; import string.list; /*DSG{{*/ var winform = win.form(text="aard ...

  3. 三种客户端访问wcf服务端的方法 C#

    原文 http://blog.csdn.net/zlj002/article/details/7914556 string jsonstr = String.Empty; string url = & ...

  4. How can I get an object's absolute position on the page in Javascript?

    How can I get an object's absolute position on the page in Javascript? How can I get an object's abs ...

  5. Java程序猿的JavaScript学习笔记(8——jQuery选择器)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  6. Android基础之在Eclipes中关联SDK源码和查看SDK源码

    在进行Android应用开发的时候,我们有时候需要查看某个类或接口的源码从而了解如何去使用一个类或者实现一个接口,查看源码有助于我们的学习某个封装的类的底层是如何实现的,这样可以帮助我们掌握类或者接口 ...

  7. SQL Server索引进阶:第五级,包含列

    原文地址: Stairway to SQL Server Indexes: Level 5, Included Columns 本文是SQL Server索引进阶系列(Stairway to SQL ...

  8. C++对象模型3--无重写的单继承

    C++对象模型中加入单继承 不管是单继承.多继承,还是虚继承,如果基于“简单对象模型”,每一个基类都可以被派生类中的一个slot指出,该slot内包含基类对象的地址.这个机制的主要缺点是,因为间接性而 ...

  9. SqlHelp

    using System.Configuration;using System.Data; public class SqlHelp { private static string connectio ...

  10. What I Have Lived For(我为什么而活着-罗素)

    What I Have Lived For by Bertrand Russell Three passions, simple but overwhelmingly strong, have gov ...