Итак, систему с ограничениями:

можно переписать так:

Причём в силу положительности матрицы
A и столбца неизвестных
x первое неравенство (с нулём) можно отбросить. Фактически, требуется посчитать число целочисленных точек, строго внутри гипергранника, ограниченного координатными гиперплоскостями (последнее неравенство на
x) и гиперплоскотями, задаваемых каждой строчкой матрицы
A.
-- 09.02.2025, 15:50 --Давайте посмотрим на "уравнение"

, к примеру, - сколько у него решений и какие?
Аж две штуки:


В данном случае задача одномерна. Требуется найти целые числа
x, принадлежащие интервалу:
-- 09.02.2025, 16:14 --Первым шагом решения, пожалуй, стоит оценить количество искомых точек сверху. Величиной таковой оценки будет "объём" гиперкуба:

Поскольку элементы матрицы
A строго положительные, в неравенстве стоит минимум.
Если же они были неотрицательными (то есть могли бы равняться в том числе и нулю), то был бы максимум. Не правильно это. В случае допущения нулей, число решений может быть бесконечным.
Следующим шагом, наверное, будет перебор строчки за строчкой матрицы
A и отсечение от этого гиперкуба "лишних" внутренних точек. Причём с каждой новой строчкой придётся проверять пересечение соответствующей гиперповерхности с гиперповерхностями, задаваемыми каждой из предыдущих строчек матрицы
A. Может даже случится так, что очередная строчка-гиперповерхность ничего не отсекает. Или же отсекает всю "форму", которая получилась предыдущими отсечениями. Здесь напрашивается оптимизация: упорядочить строчки в порядке удаления задаваемых ими гиперповерхностей от начала координат. А так же откидывание тех строчек матрицы, соответствующие которым гиперповерхности не имеют пересечения с более "близкими" гиперповерхностями внутри целевого гиперкуба.
Возможно, конечно, что существует какой-нибудь кардинально другой подход к задаче. Я такого не знаю.