import java.io.IOException;
import java.util.HashSet;
import java.util.Set;
import java.util.TreeSet;
import java.util.*;
import java.util.Scanner;
// import java.util.graph;
// import android.ui.*;
public class Main {
public static void main
(String[] args
) { "report_2025.pdf",
"data_v1.csv",
"report_2025.pdf",
"notes.txt",
"image_01.png",
"data_v1.csv",
"archive.tar.gz",
"notes.txt",
"config.json",
"image_02.png",
"report_2025.pdf",
"readme.md"
};
Set<String> uniqueFiles = new HashSet<>();
int duplicateCount = 0;
for (String fileName
: sampleInput
) { String trimmed
= fileName.
trim(); if (!trimmed.isEmpty()) {
boolean isNew = uniqueFiles.add(trimmed);
if (!isNew) {
duplicateCount++;
}
}
}
System.
out.
println("Total records processed: " + sampleInput.
length); System.
out.
println("Duplicates removed: " + duplicateCount
); System.
out.
println("Total unique files found: " + uniqueFiles.
size()); System.
out.
println("Unique files list (Sorted alphabetically):");
TreeSet<String> sortedUniqueFiles = new TreeSet<>(uniqueFiles);
for (String file
: sortedUniqueFiles
) { System.
out.
println(" - " + file
); }
}
}
aW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CmltcG9ydCBqYXZhLnV0aWwuSGFzaFNldDsKaW1wb3J0IGphdmEudXRpbC5TZXQ7CmltcG9ydCBqYXZhLnV0aWwuVHJlZVNldDsKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS51dGlsLlNjYW5uZXI7Ci8vIGltcG9ydCBqYXZhLnV0aWwuZ3JhcGg7Ci8vIGltcG9ydCBhbmRyb2lkLnVpLio7CnB1YmxpYyBjbGFzcyBNYWluIHsKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsKICAgICAgICBTdHJpbmdbXSBzYW1wbGVJbnB1dCA9IHsKICAgICAgICAgICAgInJlcG9ydF8yMDI1LnBkZiIsCiAgICAgICAgICAgICJkYXRhX3YxLmNzdiIsCiAgICAgICAgICAgICJyZXBvcnRfMjAyNS5wZGYiLCAgIAogICAgICAgICAgICAibm90ZXMudHh0IiwKICAgICAgICAgICAgImltYWdlXzAxLnBuZyIsCiAgICAgICAgICAgICJkYXRhX3YxLmNzdiIsICAgICAgIAogICAgICAgICAgICAiYXJjaGl2ZS50YXIuZ3oiLAogICAgICAgICAgICAibm90ZXMudHh0IiwgICAgICAgICAKICAgICAgICAgICAgImNvbmZpZy5qc29uIiwKICAgICAgICAgICAgImltYWdlXzAyLnBuZyIsCiAgICAgICAgICAgICJyZXBvcnRfMjAyNS5wZGYiLCAgIAogICAgICAgICAgICAicmVhZG1lLm1kIgogICAgICAgIH07CgkJCiAgICAgICAgU2V0PFN0cmluZz4gdW5pcXVlRmlsZXMgPSBuZXcgSGFzaFNldDw+KCk7CiAgICAgICAgaW50IGR1cGxpY2F0ZUNvdW50ID0gMDsKCQkKICAgICAgICBmb3IgKFN0cmluZyBmaWxlTmFtZSA6IHNhbXBsZUlucHV0KSB7CiAgICAgICAgICAgIFN0cmluZyB0cmltbWVkID0gZmlsZU5hbWUudHJpbSgpOwogICAgICAgICAgICBpZiAoIXRyaW1tZWQuaXNFbXB0eSgpKSB7CiAgICAgICAgICAgICAgICBib29sZWFuIGlzTmV3ID0gdW5pcXVlRmlsZXMuYWRkKHRyaW1tZWQpOwogICAgICAgICAgICAgICAgaWYgKCFpc05ldykgewogICAgICAgICAgICAgICAgICAgIGR1cGxpY2F0ZUNvdW50Kys7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiVG90YWwgcmVjb3JkcyBwcm9jZXNzZWQ6ICIgKyBzYW1wbGVJbnB1dC5sZW5ndGgpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiRHVwbGljYXRlcyByZW1vdmVkOiAiICsgZHVwbGljYXRlQ291bnQpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiVG90YWwgdW5pcXVlIGZpbGVzIGZvdW5kOiAiICsgdW5pcXVlRmlsZXMuc2l6ZSgpKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIlVuaXF1ZSBmaWxlcyBsaXN0IChTb3J0ZWQgYWxwaGFiZXRpY2FsbHkpOiIpOwogICAgICAgIAogICAgICAgIFRyZWVTZXQ8U3RyaW5nPiBzb3J0ZWRVbmlxdWVGaWxlcyA9IG5ldyBUcmVlU2V0PD4odW5pcXVlRmlsZXMpOwogICAgICAgIGZvciAoU3RyaW5nIGZpbGUgOiBzb3J0ZWRVbmlxdWVGaWxlcykgewogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIiAtICIgKyBmaWxlKTsKICAgICAgICB9CiAgICB9Cn0=