Большое число
Вася написал на длинной полоске бумаги большое число и решил похвастаться своему старшему брату Пете этим достижением. Но только он вышел из комнаты, чтобы позвать брата, как его сестра Катя вбежала в комнату и разрезала полоску бумаги на несколько частей. В результате на каждой части оказалось одна или несколько идущих подряд цифр. Теперь Вася не может вспомнить, какое именно число он написал. Только помнит, что оно было очень большое и, разумеется, не начиналось с нуля. Чтобы утешить младшего брата, Петя решил выяснить, какое максимальное число могло быть написано на полоске бумаги перед разрезанием ему!
Входные данные
В первой строке входных данных содержится натуральное число
N
, не превосходящее 100
100
— количество строк. Далее заданы
N
строк, каждая из которых содержит последовательность цифр. Каждая строка содержит от 1
1
до 100
100
цифр. Гарантируется, что хотя бы в одной строке первая цифра отлична от нуля.
Выходные данные
Выведите одну строку — максимальное число, которое могло быть написано на полоске перед разрезанием.
Примеры
Ввод
Вывод
4
2
20
004
66
66220004
напишите на питоне
ответ в прикрепленном файле
Давайте разберемся, как найти максимальное число, которое могло быть написано на полоске бумаги перед разрезанием.
Сначала вам нужно считать количество строк, которое задано в первой строке входных данных.
Затем нужно считать каждую из этих строк и сохранить их в отдельный список.
Далее мы будем использовать следующий алгоритм:
1. Создадим пустую строку, в которой будем хранить наше максимальное число.
2. Пройдемся по каждой строке из списка и будем сравнивать каждую цифру в строке с текущей максимальной цифрой.
3. Если цифра больше текущей максимальной цифры, то заменим текущую максимальную цифру на эту цифру и добавим ее в начало строки с максимальным числом.
4. Если цифра меньше или равна текущей максимальной цифре, то добавим ее в конец строки с максимальным числом.
5. Повторим шаги 2-4 для всех строк из списка.
6. В конце получим строку с максимальным числом.
Давайте реализуем этот алгоритм на языке Python:
```python
# Считываем количество строк
n = int(input())
# Создаем список для строк
lines = []
# Считываем строки и добавляем их в список
for _ in range(n):
line = input()
lines.append(line)
# Создаем пустую строку для максимального числа
max_number = ""
# Проходимся по каждой строке
for line in lines:
# Проходимся по каждой цифре в строке
for digit in line:
# Если цифра больше текущей максимальной цифры
if digit > max_number[0]:
# Заменяем текущую максимальную цифру и добавляем ее в начало строки
max_number = digit + max_number
# Если цифра меньше или равна текущей максимальной цифре
else:
# Добавляем цифру в конец строки
max_number += digit
# Выводим максимальное число
print(max_number)
```
Надеюсь, ответ был понятен и подробен для вас. Если у вас есть еще вопросы, обращайтесь!