Форум сайта python.su
0
Решал задачу,решил. Непонятен код в эталоном решении.
Дана последовательность натуральных чисел, завершающаяся числом 0. Определите, какое наибольшее число подряд идущих элементов этой последовательности равны друг другу.
Вот эталоное решение.
prev = -1 curr_rep_len = 0 max_rep_len = 0 element = int(input()) while element != 0: if prev == element: curr_rep_len += 1 else: prev = element max_rep_len = max(max_rep_len, curr_rep_len) curr_rep_len = 1 element = int(input()) max_rep_len = max(max_rep_len, curr_rep_len) print(max_rep_len)
max_rep_len = max(max_rep_len, curr_rep_len)
Офлайн
6
max() тут берет 2 списка и сравнивает их элементы. 1 с 1, 2 со 2 и далее. В результате она возвращает список, в котором попался бОльший элемент при сравнении. Может не очень понятно обьяснил, погугли, там все есть
Офлайн
857
FirikЗдесь max() сравнивает два числа.
max() тут берет 2 списка и сравнивает их элементы. 1 с 1, 2 со 2 и далее. В результате она возвращает список, в котором попался бОльший элемент при сравнении.
Sous
что она делает ??
>>> x = max(5, 7) >>> x 7 >>>
Отредактировано py.user.next (Янв. 6, 2016 00:43:13)
Офлайн