2026 EX p3 Reduciendo

Ver en PDF

Enviar solución

Puntos: 100 (parcial)
Límite de tiempo: 0.25s
Límite de memoria: 64M

Autor:
Tipo de problema
Lenguajes permitidos
C, C++, Java, Python

(Examen clasificatorio de la Olimpiada de Informática CDMX-EDOMEX ciclo 21-22 Nivel 01 Dia 1 Problema 1).

Descripción

Se tiene una lista de \(n\) números los cuales deseamos escribir de forma breve. Una manera breve, se obtiene cuando hay números consecutivos. Por ejemplo, para los números: \(1,2,3,4,5\) y \(6\) se puede abreviar mediante el primer número, seguido de un guión finalizando con último número \(1-6\). Esto se puede aplicar a cualquier cantidad de números; en caso de no existir números consecutivos se separan por comas.

Los segmentos se deben ordenar de menor a mayor. Por ejemplo para la siguiente lista de números \(10, 20, 30, 31\) y \(32\) la manera breve de escribirlo es \(10,20,30-33\).

Ver ejemplos para una mejor comprensión del problema.

Tarea

Dada una lista de números, favor de escribir su forma breve.

Entrada

En la 1° línea un valor entero \(n\) \((3 <= n <= 1,000)\) indicando la cantidad de números.
En la 2° línea los \(n\) valores enteros de números cada valor \(v\) entero \((1 <= v <= 1,000,000)\)

Salida

La forma breve de escribir los números en orden ascendente.

Ejemplo A

Entrada
3
100 5 45
Salida
5,45,100

Ejemplo B

Entrada
12
100 12 1 2 3 4 5 6 13 15 14 300
Salida
1-6,12-15,100,300

Ejemplo C

Entrada
9
11 3 10 12 199 1 2 4 5
Salida
1-5,10-12,199

Comentarios

No hay comentarios por el momento.