Calcule la suma que * debería * obtener si todos los números estuvieran presentes, como (superior + inferior) * (superior-inferior + 1) / 2.
Luego sume los números que recibió juntos y reste eso del número que debería haber obtenido. La diferencia es el número que falta.
Por ejemplo:
- ¿Alguien sabe de una prueba de acceso público de que la poda alfa beta funciona?
- ¿Cuál es la respuesta para (1 + 1e20) - (1e20) y 1+ (1e20-1e20)?
- ¿Por qué una calculadora simple solo toma hasta 9 dígitos como entrada?
- ¿Qué oración en el lenguaje de la aritmética de Peano es equivalente a decir que un programa dado se detendrá?
- ¿Qué especialidad de pregrado debo elegir si quiero aplicar inteligencia artificial a los campos médicos?
#include
#include
#include
#include
#include
int main () {
int inferior = -200;
int superior = 500;
int rango = superior – inferior;
srand (unsigned (time (NULL)));
std :: vector números;
int n = rand ()% rango + inferior;
para (int i = inferior; i <= superior; i ++)
si (i! = n)
números.push_back (i);
suma larga = estándar :: acumular (números.begin (), números.end (), 0L);
comp largo = (superior + inferior) * (superior-inferior + 1) / 2 – suma;
std :: cout << "Elegido =" << n << "\ n";
std :: cout << "Computed =" << comp << "\ n";
}