Задача: "Ключ доступа к зашифрованной матрице"
Описание: Напишите программу, которая создает матрицу размером 4x4, заполненную случайными числами 0 или 1.
Ваша задача - написать функцию, которая генерирует уникальный "ключ доступа" к этой матрице. Ключ должен быть строкой, состоящей из символов '0' и '1', и иметь длину, равную количеству элементов в матрице (в данном случае, 16 символов).
Функция должна проверять, сколько раз встречается каждая последовательность из четырех символов в ключе в каждом ряду, столбце и на главных диагоналях матрицы.
Если количество совпадений последовательности и чисел в матрице одинаково для всех последовательностей ключа, то ключ считается действительным.
Программа должна выводить исходную матрицу и сгенерированный ключ доступа. Если ключ действителен, программа должна выводить сообщение "Ключ доступа действителен", иначе - "Ключ доступа недействителен".
(В ПРОЦЕССЕ РЕАЛИЗАЦИИ...) Дополнительные задачи: Попробуйте оптимизировать алгоритм для больших матриц. Добавьте визуализацию процесса проверки ключа доступа.