Войти Создать аккаунт

Генераторы и итераторы · 9 из 16

Окно из трёх

Печь ведёт себя ровно до тех пор, пока три буханки подряд выходят похожего веса. Тамара смотрит на ленту именно так: три последние, потом сдвинулась на одну — снова три последние. Запоминать всю смену ей для этого не нужно, в голове помещается ровно три числа.

Что сделать

Смотрите на ленту так, как Тамара, — тремя последними буханками со сдвигом на одну.

Что приходит

  • potok — поток значений

  • shirina — сколько значений в окне, целое больше нуля

Что вернуть

Генератор: отдаёт кортежи из shirina подряд идущих значений, каждый следующий сдвинут на одно; в памяти — только окно.

Допишите функцию okna в редакторе справа. Результат верните через return — то, что напечатано, на проверку не влияет.

Пример

Окно шириной 3 по [1, 2, 3, 4, 5]: (1, 2, 3), (2, 3, 4), (3, 4, 5). Значений меньше трёх — ничего.

Тот же пример кодом
Вызов
list(okna([1, 2, 3, 4, 5], 3))
Вернуть
[(1, 2, 3), (2, 3, 4), (3, 4, 5)]
Ctrl+Enter — проверить

Обсуждение

Вопросов пока нет.

Войдите, чтобы спросить.