Clasificación de cadenas por longitud y lexicográficamente
C#
Hard
sorting
Tarea «Clasificación de cadenas por longitud y lexicográficamente»
Dada una cadena que contiene palabras separadas por espacios. Es necesario ordenar las palabras primero por longitud creciente, y en caso de igual longitud — en orden lexicográfico (decreciente). Mostrar las palabras ordenadas separadas por un espacio. Restricciones: la longitud de la cadena no supera 10^5 caracteres, las palabras consisten en letras latinas minúsculas. La solución debe ser eficiente, utilizando métodos de ordenamiento incorporados.
Formato de entrada
Una sola cadena que contiene palabras de letras latinas minúsculas, separadas exactamente por un espacio. La longitud de la cadena no supera 100000 caracteres.
Formato de salida
Una cadena que contiene las mismas palabras, ordenadas por longitud creciente, y en caso de igual longitud — en orden lexicográfico decreciente. Las palabras se separan exactamente por un espacio.
Ejemplos
Ejemplo 1
ENTRADA
cat dog apple banana
SALIDA
dog cat apple banana
Ejemplo 2
ENTRADA
a bb ccc dd
SALIDA
a dd bb ccc
Ejemplo 3
ENTRADA
5
12 34 21 43 15
SALIDA
5
Ejemplo 4
ENTRADA
{"a":1,"b":{"c":2}}
{"a":2,"b":{"d":3}}
SALIDA
{"a":1,"b":{"c":2}}
main.cs