Цветные карандаши

Представьте, что у вас есть полоска квадратиков, которые нужно закрасить разными цветами в соответствии с заданным паттерном. Квадратики нужно закрашивать последовательно, т. е. если следующий квадрат другого цвета, вам нужно поменять карандаш.

Напишите функцию, которая будет принимать список цветов cols и возвращать время (в секундах), необходимое для закрашивания всего паттерна. При этом:

  • на смену карандаша уходит 1 секунда
  • на закрашивание квадратика уходит 2 секунды

Примечание: если подряд идут два одинаковых цвета, карандаш менять не придется.

def color_pattern_times(cols):
    changes = sum(a != b for a, b in zip(cols, cols[1:]))
    return changes + len(cols)*2


Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: