3.1 Największa różnica sum kodów
Matura maj 2026 - Matura z informatyki: arkusze krok po kroku (Python)
Zadanie 3.1 (2 pkt): para słów z największą wartością \( |f(s_1) - f(s_2)| \), gdzie \( f(s) \) to suma kodów ASCII liter (`ord`). `max(pairs, key=difference)` zwraca parę, dla której funkcja `difference` daje największą wartość. Dla pliku przykładowego arkusz podaje: `eddcd eededcddceeecededcc 1403`.
with open("pary_przyklad.txt") as f:
pairs = [line.split() for line in f] # split() bez argumentu usuwa też koniec wiersza
# 3.1 f(s) = suma kodów ASCII znaków słowa, ord("a") = 97
def ascii_sum(word):
return sum(ord(c) for c in word)
def difference(pair):
return abs(ascii_sum(pair[0]) - ascii_sum(pair[1]))
best31 = max(pairs, key=difference)
print("3.1", *best31, difference(best31))Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.
Wszystkie lekcje kursu Matura z informatyki: arkusze krok po kroku·Zaloguj się, aby zapisać postęp na koncie.