Суть задачи:
Найти минимальное x ≥ 0, чтобы для всех ai число ai + x было «специальным».
Число j специальное, если min(v2(j), v3(j)) > v7(j)
Ключевые наблюдения:
Необходимое условие: Специальное число всегда делится на 6 (иначе min(v2,v3) = 0, что не может быть > v7 ≥ 0).
Проверка возможности: Если остатки ai(mod6) различны, ответ -1, так как нельзя сделать все числа кратными 6 одним сдвигом.
Поиск ответа: Если остатки одинаковы, то x должен иметь вид x0 + 6k.
Перебираем k = 0, 1, 2 … и проверяем условие specialness для всех элементов. Так как «плохие» кратные 6 (делящиеся на 7 с недостаточной степенью 2 или 3) встречаются редко, достаточно проверить первые несколько десятков кандидатов.
Алгоритм:
Если ∃i,j : ai ≡/ aj(mod6) → −1.
Иначе находим минимальное неотрицательное x0, такое что a1 + x0 кратно 6.
Перебираем x = x0, x0 + 6, x0 + 12 … пока не найдем x, при котором все ai + x удовлетворяют условию min(v2, v3 ) > v7.



