Спасибо большое,
Евгений Машеров и
B@R5uk за комментарии и советы!
ilghiz, я правильно понимаю, что в матрице C у вас количество базисных векторов существенно меньше, чем число координат в каждом из этих векторов?
не, наоборот!
Если да, то в процессе поиска

вне зависимости от ограничений на
X вас будут интересовать две величины

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

и по началу специально не заострял внимание откуда взялись эти

и

, чтобы не обсуждать наименшие квадраты. У нас с Вами кстати путаница в обозначении транспонированности матрицы

.
У меня есть память для

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

, и я хочу с минимальными затратами получать позиции ненулей в решении (

), и пытаюсь придумать что-то гарантированное, что могло бы максимально быстро решать такую задачу.
Исходная формула поиска максимума конечно позволяет на каждую пару

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

и

но таких вычислений всяко надо сделать

и от этой асимптотики как раз и хотелось бы избавиться.