age, Вы правы, конечно, не обязательно, чтобы 

 было квадратом, чтобы "уравнение" решалось. Никакого противоречия тут нет.
Для решения необходимо и достаточно, чтобы 

 было конгруэнтным числом.
А 

 = полный квадрат - это достаточное условие.
Решение Ваше пока не проверял. Может, позже.
Но вполне доверяю Вам. Скорей всего оно верно.