Аватар для courteous_lion
0 / 0 / 0
Регистрация: 31.01.2018
Сообщений: 19

Дана квадратная матрица размера NxN. Есть ли в ней последовательность 4 или более одинаковых цифр

18.11.2018, 16:42. Показов 4054. Ответов 5

Студворк — интернет-сервис помощи студентам
Здраствуйте. Есть задание на одном из тренировочных сайтов. Вот как оно звучит - "Дана квадратная матрица размера N x N. Необходимо проверить есть ли здесь последовательность 4 или более одинаковых цифр. Последовательность должна неразрывно располагаться горизонтально, вертикально или по диагоналям (основным и дополнительным).

Входные данные: Матрица, как список (list) списков с целыми числами.

Выходные данные: Есть ли здесь последовательность, как булево значение (bool).

Примеры:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
checkio([
    [1, 2, 1, 1],
    [1, 1, 4, 1],
    [1, 3, 1, 6],
    [1, 7, 2, 5]
    ]) == True
 
checkio([
    [7, 1, 4, 1],
    [1, 2, 5, 2],
    [3, 4, 1, 3],
    [1, 1, 8, 1]
    ]) == False
 
checkio([
    [2, 1, 1, 6, 1],
    [1, 3, 2, 1, 1],
    [4, 1, 1, 3, 1],
    [5, 5, 5, 5, 5],
    [1, 1, 3, 1, 1]
    ]) == True
 
checkio([
    [7, 1, 1, 8, 1, 1],
    [1, 1, 7, 3, 1, 5],
    [2, 3, 1, 2, 5, 1],
    [1, 1, 1, 5, 1, 4],
    [4, 6, 5, 1, 3, 1],
    [1, 1, 9, 1, 2, 1]
    ]) == True"
Раньше решал матрицу 3 на 3. там занёс правильные решения в список и проверял в цикле. Как решать подобные задачи с большими матрицами? Подскажите пожалуйста. Можете ответ написать, я его запишу в заметки и буду анализировать(читай-учится). Можете советов накидать.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.11.2018, 16:42
Ответы с готовыми решениями:

Дана действительная квадратная матрица А размера nxn
Дана действительная квадратная матрица А размера nxn. Вычислить суммы элементов матрицы, имеющих четные и нечетные индексы отдельно(сделать...

Необходимо проверить есть ли здесь последовательность 4 или более одинаковых цифр в списке
Нужно доработать программу чтобы находила 4 или более одинаковых цифр в списке,сейчас находит 4 одинаковые цифры в начале списка,нужно...

Пусть дана квадратная матрица A размерности 2N x 2N. Получить новую матрицу, переставляя ее блоки размера NxN по следующ
Разбил матрицу на 4 подматрицы N*N. Как теперь их соединить в нужном порядке в одну матрицу? from random import randint n =...

5
 Аватар для Semen-Semenich
5234 / 3479 / 1175
Регистрация: 21.03.2016
Сообщений: 8,306
18.11.2018, 18:37
не совсем понятно
Цитата Сообщение от courteous_lion Посмотреть сообщение
Есть ли здесь последовательность
то есть одна во всей матрице( в строках или столбцах или диагоналях) или вывод для каждой последовательности? то есть каждой строки, столбца, диагонали?
ну а так проверяете если длина строки не меньше 4х то ищем по строкам, если не нашли проверяем количество строк и если не меньше 4х то ищем по столбцам ну и если тут нет то уже по диагоналям длина которых не меньше 4х
1
 Аватар для courteous_lion
0 / 0 / 0
Регистрация: 31.01.2018
Сообщений: 19
18.11.2018, 20:42  [ТС]
Semen-Semenich, да, создам список с столбцами, строками и диагоналями которые не меньше четырёх, и проверю на одинаковые елементы. По начало испугало задание, а теперь понятно что всё понятно и ничего сложного.
0
 Аватар для Semen-Semenich
5234 / 3479 / 1175
Регистрация: 21.03.2016
Сообщений: 8,306
18.11.2018, 21:12
Цитата Сообщение от courteous_lion Посмотреть сообщение
создам список с столбцами, строками
список не нужен, прямо по матрице можно проверять
0
 Аватар для courteous_lion
0 / 0 / 0
Регистрация: 31.01.2018
Сообщений: 19
18.11.2018, 23:09  [ТС]
Как подскажите пожалуйста.

Добавлено через 7 минут
В цикле for для i в (и здесь создаем сразу и строки и столбцы и диагонали). Так?
Я еще не разобрался как вычислить другие диагонали. Мож по другому как нибудь?
0
 Аватар для Semen-Semenich
5234 / 3479 / 1175
Регистрация: 21.03.2016
Сообщений: 8,306
19.11.2018, 18:59
вам нужна функция которая ищет последовательность а в нее будете передавать из цикла сначала строки, и если нет True то потом столбцы ну и наконец диагонали. диагонали начинаете с главной так как ее длина наибольшая, затем смещаетесь вниз и проверяете длину, если не меньше 4х то отправляете ее в функцию и так и с другой частью диагоналей
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.11.2018, 18:59
Помогаю со студенческими работами здесь

Дана квадратная матрица размерности nxn
Не могу понять как написать программу в C# Дана квадратная матрица размерности nxn. Все симметричные относительно главной диагонали...

Дана квадратная матрица размерностью NxN
Дана квадратная матрица размерностью NxN, заполненная целыми числами и величина А. Сформировать одномерный массив, каждый элемент которого...

Дана квадратная целочисленная матрица NxN
Дана квадратная целочисленная матрица NxN. Найти сумму элементов выше главной диагонали и произведение нечетных элементов ниже...

Дана целочисленная квадратная матрица, размерностью NxN. Определить:
2. Дана целочисленная квадратная матрица, размерностью NxN. Определить: 1) количество строк, среднее арифметическое элементов которых...

Помощь в работе со строками (Дана строка. Заменить в ней каждую из групп, содержащих 3 или более одинаковых символов многоточием)
Доброго времени суток. По заданию необходимо:Дана строка. Заменить в ней каждую из групп, содержащих 3 или более одинаковых символов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru