Encontrar los Duplicados
Un artista local ha estado creando arte digital durante años, acumulando miles de archivos guardados en múltiples directorios. Con el tiempo, se han guardado copias duplicadas de las mismas piezas de arte con diferentes nombres, causando desorden y ocupando un espacio de almacenamiento valioso. Para ayudar a manejar esta situación, tu tarea es desarrollar un programa que identifique estos archivos duplicados basándose en su contenido.
Dada una sola línea de entrada, el nombre del directorio, el programa debe escanear todos los archivos dentro de ese directorio (no nos interesan los subdirectorios para esta tarea) y imprimir una lista de archivos duplicados agrupados. Los archivos se consideran duplicados si su contenido es idéntico. La salida debe consistir en múltiples líneas, cada línea conteniendo los nombres de archivos duplicados separados por espacios. Si un archivo no tiene duplicados, simplemente imprime el nombre del archivo en una sola línea.
Entrada | Salida |
artist/drawings | artwork1.txt copyofartwork1.txt anothercopyofartwork1.txt
drawing1.png duplicatedrawing1.png
photo1.jpg photocopy.jpg
uniquefile.txt |
Nota: En el ejemplo anterior,
drawing1.png
y duplicate_drawing1.png
son duplicados, al igual que artwork1.txt
, copy_of_artwork1.txt
y another_copy_of_artwork1.txt
, y photo1.jpg
y photo_copy.jpg
.Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB