找出两个只出现了一次的数字

原创 2013年12月03日 19:18:14
题目1256:找出两个只出现了一次的数字

时间限制:1 秒

内存限制:32 兆

特殊判题:

提交:140

解决:69

题目描述:

一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。

输入:

输入的第一行包括一个整数N(1<=N<=1000)。
接下来的一行包括N个整数。

输出:

可能有多组测试数据,对于每组数据,
找出这个数组中的两个只出现了一次的数字。
输出的数字的顺序为从小到大。

样例输入:
6
2 3 9 3 7 2 
样例输出:
7 9

#include<cstdio>
#include<vector>
#include<algorithm>
using namespace std;
 
int main()
{
    bool b;
    int n,i,f;
    vector<int> v;
    while(scanf("%d",&n)!=EOF&&n)
    {
         while(n--)
         {
             scanf("%d",&i);
             v.push_back(i);
         }
         sort(v.begin(),v.end());
         for(i=0,n=v.size()-1,b=false; i<n; )
         {
             if(v[i]==v[i+1])i+=2;
             else
             {
                  if(!b){ printf("%d",v[i]); ++i; b=true; }
                  else { printf(" %d\n",v[i]); b=false; break; }
             }
         }    
         if(b) printf(" %d\n",v[n]);
         v.clear();
    }
    return 0;
}
/**************************************************************
    Problem: 1256
    User: 3011216016
    Language: C++
    Result: Accepted
    Time:730 ms
    Memory:1024 kb
****************************************************************/


相关文章推荐

题目1256:找出两个只出现了一次的数字 位运算

题目1256:找出两个只出现了一次的数字 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:716 解决:237 题目描述: 一个整型数组里除了两个数字之外,其他的数字都...

第六十一题(找出数组中两个只出现一次的数字)

题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。 请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。 分析:乍眼看上去,...

程序员面试题精选100题(34)-找出数组中两个只出现一次的数字

http://zhedahht.blog.163.com/blog/static/2541117420071128950682/ 题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次...
  • ZCSYLJ
  • ZCSYLJ
  • 2011年09月29日 11:40
  • 319

找出数组中两个只出现一次的数字

 转自:http://blog.csdn.net/ewanyou/archive/2011/05/25/6445209.aspxhttp://www.cnblogs.com/aLittleBitCoo...
  • FG2006
  • FG2006
  • 2011年06月23日 15:44
  • 1147

算法题6 找出整数数组中两个只出现一次的数字

  题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。分析:这是一道很新颖的关于位运算的面试题。首先我...
  • wcyoot
  • wcyoot
  • 2011年05月17日 12:13
  • 1551

程序员面试宝典(34)-找出数组中两个只出现一次的数字

题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。分析:首先我们考虑这个问题的一个简单版本:一个数组里除...

微策略2011校园招聘笔试题(找出数组中两个只出现一次的数字)

1、8*8的棋盘上面放着64个不同价值的礼物,每个小的棋盘上面放置一个礼物(礼物的价值大于0),一个人初始位置在棋盘的左上角,每次他只能向下或向右移动一步,并拿走对应棋盘上的礼物,结束位置在棋盘的右下...

解题笔记(24)——找出数组中两个只出现一次的数字(数组)

问题描述:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。      思路:如果只有一个数字只出现一次,而...

【位运算】找出数组中,只出现一次的两个数字

题目: 一个整型数组里除了两个数字之外,其他的数字都出现了两次,请写程序找出这两个出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1). 分析: 由于限制了复杂度,所以要用异或...

找出数组中出现一次两个数,其他数字都出现偶数次

一问题描述     一个数组中,存在两个只出现一次的数字,其余的数字均出现两次。要求在时间复杂度o(n),空间复杂度为o(1)的情况下找出这两个数字。   二 问题分析      此题实际考察...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:找出两个只出现了一次的数字
举报原因:
原因补充:

(最多只允许输入30个字)