Программирование на Python: Сортировки
Задача №111152. Возрастает ли список?
Дан список. Определите, является ли он монотонно возрастающим (то есть верно ли, что каждый элемент этого списка больше предыдущего).
Выведите YES, если массив монотонно возрастает и NO в противном случае.
Решение оформите в виде функции IsAscending(A). В данной функции должен быть один цикл while, не содержащий вложенных условий и циклов — используйте схему линейного поиска.
Примеры
Ввод | Вывод |
1 7 9 | YES |
Решение
def IsAscending(A):
i = 0
f = True
while f and i + 1 < len(A):
f = A[i] < A[i + 1]
i += 1
return f
x = list(map(int, input().split()))
if IsAscending(x):
print("YES")
else:
print("NO")
Задача №111153. Последний максимум
Найдите наибольшее значение в списке и индекс последнего элемента, который имеет данное значение за один проход по списку, не модифицируя этот список и не используя дополнительного списка.
Выведите два значения.
Примеры
Ввод | Вывод |
1 2 1 2 1 | 2 3 |
Решение
a = list(map(int, input().split()))
max_i = 0
m = a[max_i]
for i, elem in enumerate(a):
if elem >= m:
m = elem
max_i = i
print(m, max_i)