Предлагаю принять участие в очередном любительском конкурсе по программированию. На этот раз нужно написать программу, которая как можно быстрее вычисляет обратную по модулю

матрицу. Время конкурса - 2 недели, начиная от 4-го апреля 2012 г..
Целочисленная матрица

называется обратной к целочисленной матрице

по модулю

, если

Максимальный порядок матрицы

.
Участие только под Win-32.
Подробности как обычно
на этой странице моего сайта.
Реализация метода Гаусса "в лоб" работает на максимальном тесте 40 минут. Разумеется, все это значительно ускоряется. В этом и состоит задача участников.
Причина, по которой я начал этот конкурс, заключается в том, что для точного решения целочисленной системы уравнений нужно обращать исходную матрицу по модулю, чтобы потом отыскать p-адическую аппроксимацию решения. Вот это самое обращение матрицы нужно научиться выполнять быстро. Интересно посмотреть, что по этому поводу могут показать участники.
Модераторам: dxdy указан в качестве информационного спонсора.