Pewnego dnia pisaliśmy zdania z moją córką za pomocą magnesu na lodówkę. Chociaż mogliśmy stworzyć niektóre ( I love cat), nie mieliśmy wystarczającej liczby liter, aby utworzyć inne ( I love you too) z powodu niewystarczającej ilości liter o(4)
Potem dowiedziałem się, że chociaż jeden zestaw zawiera 3 elitery, ma tylko 2 olitery. Prawdopodobnie zainspirowany http://en.wikipedia.org/wiki/Letter_frequency nadal nie odzwierciedlałoby to faktycznej sytuacji „na lodówce”.
Problem
Biorąc pod uwagę plik tekstowy, w którym każda linia zawiera „przykładowe zdanie”, które chcielibyśmy napisać na lodówce, zaproponuj zestaw alfabetu z minimalną ilością liter, ale wciąż wystarczającą do napisania każdego zdania osobno.
Uwaga: ignoruj przypadki, wszystkie litery magnesów i tak są wielkimi literami.
Wejście
Plik zawiera zdania oddzielone znakiem nowej linii:
hello
i love cat
i love dog
i love mommy
mommy loves daddy
Wynik
Podaj posortowaną listę liter, gdzie każda litera pojawia się tylko tyle razy, aby wystarczyło napisać dowolne zdanie:
acdddeghillmmmoostvyy
(dzięki, isaacg!)
Zwycięzca
Najkrótsza implementacja (kod)
AKTUALIZACJA: Testowanie
Stworzyłem dodatkowy test i wypróbowałem różne odpowiedzi tutaj:
Mna W, czy na boki Nna Z? ;-)
Is.
_\¯
vWyjście powinno zawierać literę ;)