Puede lograr esto simplemente manteniendo una matriz de la magnitud máxima del número que se puede dar como entrada.
De la pregunta parece que la magnitud máxima de su entrada es 1000.
así que declara una matriz de tamaño 1000.
// matriz [1000]
Inicialice cada posición de esta matriz a 0.
para cada i, array [i] significa el número de veces que se ha insertado el número i como datos.
- Encuentre la suma máxima del subconjunto de longitud k de un conjunto dado, de modo que la suma sea estrictamente menor que M
- ¿Necesita algoritmos para la interfaz de usuario?
- Cómo escribir un código para fusionar dos listas vinculadas ordenadas
- ¿Por qué la clasificación rápida se considera una clasificación inestable?
- ¿Cuáles son las cosas más incomprendidas sobre programación competitiva y concursos de programación como ACM ICPC?
Insertar operación
suponga que la entrada se almacena en la variable k.
k = entrada ().
aumentar la posición k de la matriz en 1.
// matriz [k] ++.
operación de búsqueda
si el elemento a buscar se almacena en k. Pruebe el valor en la posición k de la matriz. Si el valor es positivo, el elemento está presente, de lo contrario no está presente.
Eliminar operación
si el elemento a eliminar se almacena en la variable k. Disminuya el valor en la posición k de la matriz.
// matriz [k] -.