Есть несколько способов найти квадратный корень целого числа, используя только целочисленную арифметику. Например, вот этот. Это делает интересное чтение, а также очень интересную теорию, особенно для моего поколения, где такие методы уже не так полезны.
Главное, что он не может использовать арифметику с плавающей запятой, что исключает метод Ньютона и его производные. Единственный известный мне способ найти корни — это биномиальное расширение, но оно также требует арифметики с плавающей запятой.
Какие существуют методы/алгоритмы для вычисления целых n-ых корней с использованием только целочисленной арифметики?
Изменить: спасибо за все ответы до сих пор. Все они кажутся немного более разумными пробами и улучшениями. Нет ли лучшего способа?
Edit2: Хорошо, похоже, нет умного способа сделать это без проб/улучшений и либо метода Ньютона, либо бинарного поиска. Кто-нибудь может сравнить их теоретически? Я провел ряд тестов между ними и нашел их очень похожими.