Задача 13: Переворачивание изображения

Напишите определение функции flipAndInvertImage(image), которая принимает один аргумент:

  • image — бинарная квадратная матрица размером n x n, представленная в виде списка списков. Каждый вложенный список представляет собой строку матрицы, а элементы вложенных списков (0 или 1) — это значения в ячейках.

Бинарная матрица в Python представляется следующим образом:

image = [
    [1, 1, 0],  # строка 1
    [1, 0, 1],  # строка 2
    [0, 0, 0]   # строка 3
]

Функция должна выполнить следующие действия:

  1. Перевернуть матрицу по горизонтали.
    Это означает, что каждая строка матрицы должна быть развернута. Например:
    [1, 1, 0][0, 1, 1].
  2. Инвертировать матрицу.
    Это означает замену каждого 0 на 1 и каждого 1 на 0. Например:
    [0, 1, 1][1, 0, 0].

Функция должна вернуть преобразованную матрицу.


Пример 1

Входные данные:

image = [
    [1, 1, 0],
    [1, 0, 1],
    [0, 0, 0]
]

Промежуточные шаги:

  1. После переворота строк:

    [
        [0, 1, 1],
        [1, 0, 1],
        [0, 0, 0]
    ]
    
  2. После инверсии:

    [
        [1, 0, 0],
        [0, 1, 0],
        [1, 1, 1]
    ]
    

Выходные данные:

[
    [1, 0, 0],
    [0, 1, 0],
    [1, 1, 1]
]

Пример 2

Входные данные:

image = [
    [1, 1, 0, 0],
    [1, 0, 0, 1],
    [0, 1, 1, 1],
    [1, 0, 1, 0]
]

Промежуточные шаги:

  1. После переворота строк:

    [
        [0, 0, 1, 1],
        [1, 0, 0, 1],
        [1, 1, 1, 0],
        [0, 1, 0, 1]
    ]
    
  2. После инверсии:

    [
        [1, 1, 0, 0],
        [0, 1, 1, 0],
        [0, 0, 0, 1],
        [1, 0, 1, 0]
    ]
    

Выходные данные:

[
    [1, 1, 0, 0],
    [0, 1, 1, 0],
    [0, 0, 0, 1],
    [1, 0, 1, 0]
]

0

Вы должны Войти или Зарегистрироваться чтобы оставлять комментарии