zoukankan      html  css  js  c++  java
  • 1003: FFF团的情侣活动--课程作业--找出N个数字中唯一出现奇数次的数

    1003: FFF团的情侣活动

    Time Limit: 1 Sec  Memory Limit: 2 MB

    Description

    圣诞节快到了,Water作为大FFF团团长,组织许多对情侣进行电影院隔位坐,双人套餐打十一折等积极向上的活动。

    Water会给每个人编号,情侣两人的号码是一样的。丧心病狂却又单身的Water把自己也算了进去,最后却把自己的编号忘记了。


    Water手上现在只有一份乱了的号码单(包括Water的号码),他又过来死皮赖脸的求你帮他把号码找出来。

    Input

    一组数据。

    第一行为 整数N (0<N<=1000000)

    接下来N行 每行为一个整数。

    Output

    一行,Water的号码。

    Sample Input

    5
    3
    2
    4
    2
    3
    

    Sample Output

    4

    HINT

    Sample解释:由于情侣间的号码是一样的,所以孤独的4就是Water的号码了!注意,也有可能是如下情况:


    3 2 2 2 3


    由于2有三个,其中两个是一对情侣,剩下那个号码2就是Water的啦!


    情侣的号码也可重复。

    这里我们用到异或的一个性质:A xor A = 0,也就是说异或同一个数偶数次,结果不变。

         这样我们只需要按顺序把所有的数依次异或一遍,剩下的就是唯一出现奇数次的那个数了。

    然后,这里还要注意一下内存的问题,因为只有2m,所以不能开一个很大的数组来遍历,直接读入一个异或一次就好了;

     1 #include <stdio.h>
     2  
     3 int main()
     4 {
     5     int i, n;
     6     int val = 0;
     7     scanf("%d", &n);
     8     int a;
     9     for (i = 0; i < n; i++) {
    10         scanf("%d", &a);
    11         val ^= a;
    12     }
    13 
    14     printf("%d
    ", val);
    15     return 0;
    16 }
  • 相关阅读:
    Python pip配置国内源
    【VLC】VLC命令行参数
    发个在owasp上演讲web应用防火墙的ppt
    Tips of Linux C programming
    linux程序调试
    scrapy结合webkit抓取js生成的页面
    Using Internet Explorer from .NET
    http长连接200万尝试及调优
    nginx url解码引发的waf漏洞
    poj 2513
  • 原文地址:https://www.cnblogs.com/xiezhw3/p/3456221.html
Copyright © 2011-2022 走看看