Python. Вводится строка, содержащая только заглавные буквы латинского алфавита и цифры. Нужно определить максимальное число, которое ограничено буквами и не начинается с 0.
Пример:
Ввод: EEG9OAP50CU02PJGJ32O3227IMY58SW82TTZ7MMQAJ
Вывод: 3227
Ответы
Ответ:
Можно решить задачу следующим образом:
Пройти в цикле по всем символам строки, проверяя, является ли текущий символ цифрой, и начинается ли число с ненулевой цифры.
Если условия выполнены, то начать считывать число до тех пор, пока встречаются цифры, и сохранить максимальное найденное число.
После прохода по всей строке вернуть максимальное найденное число.
Вот пример кода на Python, который решает данную задачу:
s = input() # ввод строки
max_num = 0 # переменная для хранения максимального числа
i = 0 # индекс текущего символа
while i < len(s):
if s[i].isdigit() and s[i] != '0': # если текущий символ - цифра и число не начинается с нуля
num = '' # переменная для хранения текущего числа
while i < len(s) and s[i].isdigit(): # считываем число до тех пор, пока встречаются цифры
num += s[i]
i += 1
max_num = max(max_num, int(num)) # обновляем максимальное число, если нашли большее
else:
i += 1
print(max_num) # выводим максимальное число
Объяснение: