- Python. Простые алгоритмы
- Просмотров: 624
11. Свойства чисел в списке
Пример. Определить количество чисел, у которых вторая с конца цифра – чётная
Дан список:
a= [1122, 3312, 2233, 6714, 5115, 5116, 7711, 8598, 1929,1]
Способ 1. Использование цикла for и операций // и %
n = len(a)
k=0
for i in range(n):
d = a[i]//10 # отбросить младшую цифру числа
d= d%10 # вторая с конца
if d%2==0 and d > 0:
k+=1
print('k =',k)
# k = 2
Временная сложность: O (n)
Способ 2. Использование генератора списка и операций // и %
b = ([x for x in a if x//10%10%2==0 and x//10%10 > 0])
print('Кол-во=',len(b))
# Кол-во= 2
Временная сложность: O (n)
Способ 3. Использование цикла for и операции среза
k=0
b = ([ str(x) for x in a ])
for x in b:
if len(x) > 1 and x[-2] in ['0','2','4','6','8']:
k+=1
print('Кол-во=',k)
# Кол-во= 2
Временная сложность: O (n)