Najczęstsza litera w zdaniu

Zadanie 8 z 15 · rozdział 17Trudność: 1 z 3dictstring

Treść zadania

Wczytaj zdanie. Policz wystąpienia liter, pomijając spacje, cyfry i znaki interpunkcyjne oraz nie rozróżniając wielkości liter. Wypisz literę, która występuje najczęściej.
Jeśli kilka liter występuje tyle samo razy, wybierz tę, która pojawia się w zdaniu jako pierwsza.

Dane wejściowe

  • 1. linia: zdanie (zawiera co najmniej jedną literę)

Dane wyjściowe

Jedna linia: najczęstsza litera, zapisana jako mała litera.

Ograniczenia

  • zdanie ma od 1 do 300 znaków

Uwagi

  • A i a to ta sama litera — w zdaniu Ala ma Asa litera a występuje 5 razy.
  • Zliczanie można powierzyć klasie Counter z modułu collections (from collections import Counter). Counter to słownik element → liczba wystąpień, np. Counter("abca") daje Counter({'a': 2, 'b': 1, 'c': 1}), a metoda most_common(1) zwraca listę z jedną parą (element, liczba) o największej liczbie wystąpień: Counter("abca").most_common(1) to [('a', 2)].
  • Przy remisie most_common zachowuje kolejność pierwszego wystąpienia, więc spełnia regułę z treści: Counter("baab").most_common(1) to [('b', 2)].

Przykład

Wejście
lezy jerzy na wiezy
Wyjście
e

Litery e, z i y występują po 3 razy; najwcześniej w zdaniu pojawia się e.

Potrzebujesz teorii?

Zasady obowiązujące w rozdziale 17

Zadania w tym rozdziale ćwiczą pracę ze słownikami (dict): tworzenie, dodawanie i usuwanie par, zliczanie wystąpień oraz grupowanie danych według klucza.
Każde zadanie (oraz każdy podpunkt) jest osobnym, niezależnym programem: czyta standardowe wejście (stdin) i wypisuje wynik na standardowe wyjście (stdout).

Konwencje wspólne:

  • Dane wczytuj dokładnie w kolejności podanej w sekcji Wejście; jeśli w jednej linii jest kilka wartości — rozbij ją po spacjach.
  • Jeśli wynikiem jest słownik, wypisz go tak, jak robi to print(slownik) w Pythonie: {klucz: wartość, klucz: wartość} — pary oddzielone przecinkiem i spacją, po dwukropku spacja, klucze i wartości napisowe w apostrofach (np. {'ala': 2, 'ma': 1}), liczby bez apostrofów (np. {1: 1, 2: 4}), pusty słownik to {}.
  • Kolejność par w wypisanym słowniku to kolejność, w jakiej klucze były do niego dodawane (tak zachowuje się słownik w Pythonie).
  • Program nie wypisuje komunikatów typu „Podaj liczbę:”.

Zadanie pochodzi z otwartego zbioru Nauka-Programowania (z rozwiązaniami wzorcowymi). Zgłoś błąd w treści lub testach.

Python uruchomi się w przeglądarce przy pierwszym teście.

Kod zapisuje się automatycznie w tej przeglądarce. Tab wstawia wcięcie; aby opuścić edytor klawiaturą, naciśnij Esc, a potem Tab.

Testy

Program dostaje „Wejście” przez input() i musi wypisać „Oczekiwane wyjście”. Liczby porównywane są z tolerancją 0,01, a tekst podany w input("…") nie jest sprawdzany.

Test 1

Nie uruchomiono
Wejście
ab ba
Oczekiwane wyjście
a

Test 2

Nie uruchomiono
Wejście
Hello!
Oczekiwane wyjście
l

Test 3

Nie uruchomiono
Wejście
Zebra ZOO zoo
Oczekiwane wyjście
o

Test 4

Nie uruchomiono
Wejście
x
Oczekiwane wyjście
x

Test 5

Nie uruchomiono
Wejście
Mississippi!
Oczekiwane wyjście
i

Test 6

Nie uruchomiono
Wejście
Ala ma Asa
Oczekiwane wyjście
a

Test 7

Nie uruchomiono
Wejście
2 + 2 = 4, Q.E.D.
Oczekiwane wyjście
q
Uruchom z własnymi danymi