вступление
Друг поставил этот вопрос сегодня немного по-другому: «Может ли одна команда [Python] определить наибольшее из целых чисел И что они не равны?».
Хотя мы не нашли способ сделать это в рамках разумных определений «единой команды», я подумал, что это может быть забавной проблемой для гольфа.
Вызов
Msgstr " Вернуть наибольшее из списка целых чисел, если-и-только-если они не все равны. "
Более конкретно:
Дана строка, содержащая только список целых чисел через запятую:
- Если они все равны, ничего не вернуть / вывести
- Иначе, возврат / вывод самый большой
правила
- Вход должен быть строкой , содержащей только разделенный запятыми список целых чисел
- Выход должен быть либо ничего (нет выхода любого вида), либо наибольший элемент из ввода, представленное как это на входе
Записи могут быть полной программой или просто функцией, при условии, что вы предоставляете какой-то способ их проверить!
Предположения
- Предположим, элементы входного списка могут быть более одной цифры, но не больше (2 32 - 1)
- Предположим, что входной список содержит не более миллиона элементов
- Предположим, что входные данные не будут содержать отрицательные значения
- Предположим, что вход никогда не будет пустым
Во избежание сомнений, объяснение вызова, данное сразу после «Более конкретно», должно заменить замену вызова выше («Верните самое большое ...»).
Примеры
(1) Все равны:
Input: 1,1
Output:
(2) Не похожи:
Input: 1,2
Output: 2
(3) Ноль !:
Input: 0,0,0,0,0,0,0,1,0,0
Output: 1
(4) Случайный:
Input: 7,3,8,4,8,3,9,4,6,1,3,7,5
Output: 9
(5) Большие числа, больший список:
Input: 627,3894,863,5195,7789,5269,8887,3262,1448,3192
Output: 8887
Дополнительные примеры:
(6) Все равны, большой список:
Input: 7,7,7,7,7,7,7,7,7
Output:
(7) Все равны, большой список, большие числа:
Input: 61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976
Output:
(8) Не равно, больший список, большие числа:
Input: 96185,482754,96185,96185,96185,96185,96185,96185,7,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,961185,96185,96185,96185
Output: 961185
счет
Это code-golf
так, поэтому код с самым коротким числом байтов выигрывает!
7,3,7,2
.
,
во вход?
None
в python) вместо вывода ничего? Кроме того, почему входные данные должны быть строкой, а не списком? И что вы подразумеваете под самым большим элементом на входе, представленным как он есть на входе