Simètrics

Donat un enter n, definim el seu simètric com a −n. Per exemple, el
simètric de 3 és −3, i el simètric de −6 és el 6.

Sigui un vector v = [x₀, x₁, x₂, …, x_(n − 1)] (n és parell) tal que per
qualsevol element de v, el seu simètric també està a v i no hi ha
elements repetits.

Definim la distància entre un número x i el seu simètric −x com el
nombre de números que hi ha entre tots dos.

Per exemple, si v = [3, −3, −5, 2, −2, 5], tenim que

la distància entre 3 i el seu simètric és 0,

la distància entre −5 i el seu simètric és 2,

la distància entre 2 i el seu simètric és 0.

Feu la funció :

int simetric(const vector<int>& v){ 

// Pre: v es un vector no buit de longitut parell 

// on per a cada element existeix el seu simètric 

// Post: retorna la distància màxima

En l’exemple anterior, en què v = [3, −3, −5, 2, −2, 5], la funció
tornarà 2, que és la distància entre 5 i el seu simètric.

Després heu de fer un programa principal que llegeixi una seqüència
d’enters acabada en 0, crei el vector amb tots els elements llegits
menys el 0, cridi a la funció anterior i mostri el resultat per pantalla

Entrada

Una seqüència d’enters acabada en 0. La seqüència no conté elements
repetits i per a cada element existeix el seu simètric.

Sortida

El màxim de totes les distàncies que hi ha entre un element i el seu
simètric.

Informació del problema

Autoria: INFO.

Generació: 2026-01-25T17:00:56.385Z

© Jutge.org, 2006–2026.
https://jutge.org
