遇健 发表于 2021-10-26 18:09:19

求助

哪个大佬帮我解决一下这个题,题在图片里

傻眼貓咪 发表于 2021-10-26 18:09:20

本帖最后由 傻眼貓咪 于 2021-10-26 19:03 编辑

#include <stdio.h>

int main()
{
    int x, res = 0, a;
    scanf("%d", &x);
    for(int i = 0; i < x; i++){
      scanf("%d", &a);
      res ^= a; // 用位元运算符便可
    }
    printf("%d", res);
    return 0;
}7
1 1 2 2 3 3 4
4

位元运算符:

a ^ a ^ b = b
a ^ a ^ a ^ a ^ b = b
*只会保留奇数,偶数会被过滤。注:这里的偶数和奇数指的是出现次数,不是值(这里是有关位元知识,我就不多说了)

jhq999 发表于 2021-10-26 18:26:09

本帖最后由 jhq999 于 2021-10-26 18:30 编辑


scanf("%d",&num);
getchar();
int *a =new int;
i=0;
while(i<num)
{
    scanf("%d",a);
    i++;
}

for(i=0;i<num;i++)
{
   flag=1;
    for(j=0;j<num;j++)
      {
         if((a==a)&&(j!=i))
          {
               flag=0;
               break;
         }
       }
       if(flag)
      {
         flag=i;//flag就是答案
      break;
       }
}

drlete[] a;

傻眼貓咪 发表于 2021-10-26 19:01:06

本帖最后由 傻眼貓咪 于 2021-10-26 19:23 编辑

兄弟,如果觉得我的代码知识有帮到你,请设最佳解答,谢谢{:10_254:}

jhq999 发表于 2021-10-26 19:58:53

傻眼貓咪 发表于 2021-10-26 18:55
位元运算符:

a ^ a ^ b = b


学到老,没想到用异或

傻眼貓咪 发表于 2021-10-26 20:33:23

jhq999 发表于 2021-10-26 19:58
学到老,没想到用异或

共同学习,这个也是以前某个大佬教的{:10_257:}
页: [1]
查看完整版本: 求助