Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/29: Рейтинг темы: голосов - 29, средняя оценка - 4.72
0 / 0 / 0
Регистрация: 24.12.2018
Сообщений: 24

Поиск подматриц в матрице

24.12.2018, 23:37. Показов 6105. Ответов 3

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

То есть, при матрице
1 3 4 5
3 7 2 4
2 3 8 1


подматрицами будут :
1 3 4
3 7 6
2 3 8


2 4
8 1


Не могу придумать работающий алгоритм. Была идея идти по массиву вот так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    for (int i = 0; i < n-1; i++)
    {
        for (int j = 0; j < n - 1;j++)
        {
            for (int k = i; k<n; k++)
            {
                for (int l = j; l <n; l++)
                {
                    //здесь проверять условие
                }
                
            }
            
        }
    }
Но так он проходит не все подматрицы. Подскажите пожалуйста
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.12.2018, 23:37
Ответы с готовыми решениями:

В заданной матрице найти максимальную сумму элементов прямоугольной подматрицы среди всех возможных подматриц
Дан массив A. Необходимо найти с помощью функции максимальную сумму элементов прямоугольного подмассива по всем возможным прямоугольным...

Функция поиска в матрице размера N*N количества подматриц заданного вида
Надо написать функцию поиска в матрице размера N*N количества подлматриц заданного вида Помогите кто чем сможет.....

Выделение подматриц из матрицы
Всем привет, не получается решить следующую задачу: допустим есть матрица X как в цикле последовательно получить из неё 3 матрицы...

3
 Аватар для alkl
119 / 94 / 35
Регистрация: 18.12.2012
Сообщений: 654
25.12.2018, 03:44
ИМХО, задачу упростит создание функции, проверяющую углы подматриц, принимающую в аргументах - указатель на всю матрицу, левый-верхний угол подматрицы и её размер. А уже перебрать все углы и размеры, вызывая функцию, не составит труда.
0
0 / 0 / 0
Регистрация: 24.12.2018
Сообщений: 24
26.12.2018, 23:32  [ТС]
С функцией более менее понятно, а как пройтись по матрице так ,чтобы именно все подматрицы захватывало,а не так как у меня в вышеупомянутом коде?
0
 Аватар для alkl
119 / 94 / 35
Регистрация: 18.12.2012
Сообщений: 654
27.12.2018, 00:28
Цитата Сообщение от Karos234 Посмотреть сообщение
С функцией более менее понятно
Ну и сделайте с функцией. Тогда вопрос "как ?" отпадёт.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.12.2018, 00:28
Помогаю со студенческими работами здесь

Создание подматриц в цикле
Здравствуйте! Очень прошу помочь разобраться с проблемой создания подматриц в цикле при использовании условного оператора. Суть...

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

Выборка всех подматриц матрицы
Здравствуйте, такой вопрос: У меня есть класс матриц, в котором прописана их обработка, различные операции над ними. Не могу понять...

Найти количество подматриц с заданной суммой элементов
Результат эксперимент представляет из себя матрицу из 0 &lt; N &lt;= 1000 строк и 0 &lt; М &lt;= 1000 столбцов, выполненную целыми числами по модулю...

Заменить элементы матрицы суммой элементов соответствующих подматриц
Дана вещественная матрица A размером (m x n). Обозначим A'(i,j)-верхний левый угол матрицы A до i-й строки и j-го столбца(подматрица)....


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru