Autor
|
Tema: [RETO+Python] Buscando rangos (Leído 8,194 veces)
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
He aquí un nuevo reto a ver quién lo tiene más corto El input del programa será una lista de números mayores a 0 ordenados y separados por espacios. El script debe de encontrar rangos de números consecutivos y agruparlos, y dejar los que no estan consecutivos separados. El output serán esos rangos separados por coma y espacio. Ej: INPUT: 1 2 5 8 9 10 11 18 OUTPUT: 1-2, 5, 8-11, 18
INPUT: 3 6 9 10 12 13 OUTPUT: 3, 6, 9-10, 12-13 Saludos!
|
|
« Última modificación: 12 Enero 2011, 15:30 pm por Novlucker »
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
mr.blood
Desconectado
Mensajes: 150
|
Una pregunta, meter los datos desordenados no valdria no ??? . Sa1uDoS
|
|
|
En línea
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
No, los datos se ingresan ordenados y se considera que se mete una muestra "buena", así que no es necesario verificar nada. Además eso se arreglaría con un simple sort,por eso directamente lo he obviado.
Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Me apunto Por cierto, se devuelve una cadena de texto, no?
|
|
|
En línea
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Exacto, imprimir una cadena. Yo por ahora tengo un código funcional pero me resulta muy largo, y se que se puede hacer más corto, así que voy a ver si tomo las cosas por otro lado Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
ukol
Desconectado
Mensajes: 55
|
Jaja me gustan estos retos No he contado pero ahi va el mio, en mi estilo ONE-LINE la entrada va en l, no la he recogido, voy a cenar ya no tengo tiempo ME ha costado un buen rato, depurar cosas de 1 linea es superchungo for i in reduce(lambda l,x:l[:-1]+[l[-1]+[x][x-l[-1][-1]-1:]]+[[x]][:x-l[-1][-1]-1],l[1:],[l[0:1]]):print str(i[0])+(len(i)-1 and'-'+str(i[-1])or''),',',
con l=[1,3,5,6,7,8,10,13,14,17] output 1 , 3 , 5-8 , 10 , 13-14 , 17 , Cuente Cuente, son 3 ojos! (no sé cuantos bytes )
|
|
|
En línea
|
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Ukol, no estas cumpliendo los requisitos del reto! Has de recibir una cadena de numeros separados por espacios...
|
|
|
En línea
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Eso mismo, y la salida debe de ser número->coma->espacio->otra vez 154 bytes, pero te falta el input Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Lo minimo que he conseguido, cumpliendo todas las reglas del reto, han sido 153 bytes e,s=1,'' def m(x,y): global e,s if int(x)-int(y)-1:s+=y+', ';e=1 elif e:s+=y+'-';e=0 return 0 a=sorted(raw_input().split(),cmp=m)[-1];print s+a
Supongo que debe haber una forma mas simple, pero no se me ocurre Un saludo
|
|
« Última modificación: 13 Enero 2011, 15:55 pm por Karcrack »
|
En línea
|
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Nadie mas? Uiiis.. que soso el reto
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
[RETO] ¿Fácil? Buscando los números de Lychrel
« 1 2 3 4 »
Programación Visual Basic
|
raul338
|
34
|
13,720
|
19 Agosto 2010, 01:54 am
por [D4N93R]
|
|
|
Reto/Juego Ejercicios en Python
« 1 2 3 4 5 »
Ejercicios
|
Novlucker
|
47
|
35,692
|
20 Diciembre 2010, 06:47 am
por [L]ord [R]NA
|
|
|
Reto: Números primos en python
Ejercicios
|
Novlucker
|
6
|
10,467
|
24 Noviembre 2010, 16:02 pm
por Novlucker
|
|
|
[Python]Transformar rangos de IP
Python
|
.:UND3R:.
|
3
|
3,624
|
18 Mayo 2015, 05:53 am
por .:UND3R:.
|
|
|
[Problema Reto C/C++] Sumatoria de Rangos de Impares
Programación C/C++
|
AlbertoBSD
|
5
|
2,720
|
14 Marzo 2017, 17:16 pm
por AlbertoBSD
|
|