Создайте последовательность A при помощи следующего генератора:
def pseudo_list():
for i in range(N):
yield (i*9876+1024)%1000
N = 10**6 + 1
A = pseudo_list())
# Элементы данной последовательности следует перебирать так:
for x in A:
pass # работа с очередным числом x
Найдите «медиану» данного псевдосписка чисел при помощи сортировки подсчётом
Ответы на вопрос
Ответил darenav99
0
def pseudo_list():
for i in range(N):
yield (i*9876+1024)%1000
N = 10**6 + 1
A = pseudo_list()
count = [0] * 1000
for x in A:
count[x] += 1
x = 0
sum_count = count[0]
while sum_count <= N//2:
x += 1
sum_count += count[x]
print(x)
Ответ 496
for i in range(N):
yield (i*9876+1024)%1000
N = 10**6 + 1
A = pseudo_list()
count = [0] * 1000
for x in A:
count[x] += 1
x = 0
sum_count = count[0]
while sum_count <= N//2:
x += 1
sum_count += count[x]
print(x)
Ответ 496
Новые вопросы
Другие предметы,
2 года назад
Математика,
9 лет назад
Математика,
9 лет назад
Математика,
9 лет назад