按位异或运算输入正奇数小于100,其余数(n-1)/2

按位异或运算

img


输入正奇数小于100,其余数(n-1)/2
再将落单的数 输出出来


int main()
{
    int n;
    scanf("%d", &n);
    int arr[n], o = 0;
    for (int i = 0, j; i < n; i++)
    {
        scanf("%d", &arr[i]);
        for (j = 0; j < i; j++)
        {
            if (arr[j] == arr[i])
                break;
        }
        if (j == i)
            o = arr[i];
    }
    printf("%d", o);
}

这个题的意思应该是用异或来判断两个数是否相等
例如 5^5 = 0 , 5^6是不等于0的
所以程序只要找到那个和其它数都不等于0的,就是落单要输出的数