Encuentre el número impar de ocurrencias en la matriz donde los otros números son todos pares

Encuentre el número impar de ocurrencias en la matriz donde los otros números son todos pares

Descripción del Título

Da un arreglo de matriz, en el que solo un número aparece en tiempos impares y los otros números aparecen en tiempos pares, imprime este número.

Ingrese una descripción:

La entrada contiene dos líneas, la primera línea contiene un número entero n (1 ≤ n ≤ 1 0 5) n (1 \ leq n \ leq 10 ^ 5)n ( 1norte1 05 ), representa la longitud de la matriz arr, hay n números en la segunda fila, que representanarri arr_ia r ryoEs un entero de 32 bits.

Descripción de salida:

Genera un número entero, que representa el número impar de ocurrencias.

Ejemplo 1
entrar
5
3 1 3 1 2
Salida
2
Ejemplo 2
entrar
3
6 6 3
Salida
3

responder:

Use 0 directamente para XOR todos los números, y el resultado final es el número que aparece en los tiempos impares.

Debido a que XOR satisface las leyes conmutativas y asociativas, el orden de reemplazo de los elementos no cambia el resultado final.

Por ejemplo, para una matriz: ABCDABC, el resultado de XORing 0 con ellos es el mismo que el resultado de XORing con AABBCCD.

Código:
#include <cstdio>

using namespace std;

int main(void) {
    
    
    int n, x;
    int ret = 0;
    scanf("%d", &n);
    while (n--) {
    
    
        scanf("%d", &x);
        ret ^= x;
    }
    return 0 * printf("%d\n", ret);
}

Supongo que te gusta

Origin blog.csdn.net/MIC10086/article/details/109131709
Recomendado
Clasificación