Никой от по-познатите методи за намиране на корен не е ефективен за такива големи числа. Но, както и romeo_ninov предложи, аз бих го пробвал първо как върви с разлагане на прости множители, като обаче (ако нещо не се оплитам в мислите си) не съм съгласен, че трябва да се следи за четен брой от множители, а трябва да се следи за съответни на степента на корена бройки от еднакви множители. Опростен пример с корен пети от 7776:
nthroot(7776, 5) = nthroot(2*2*2*2*2*3*3*3*3*3, 5) = nthroot(2*2*2*2*2, 5) * nthroot(3*3*3*3*3, 5) = 2*3 = 6
Присъствието дори на една група от еднакви множители, броят на които не отговаря на степента на корена, води до липсата на целочислен корен.
Правилно си забелязал, че всички степени завършват на 0, 1, 4, 5, 6 и 9, но при четни степени. Ползвай го, за да отсяваш някои от числата, които ти се налага да смяташ. Не съм сигурен някаква проверка за това дали числото не е просто дали няма да доведе до някакъв положителен ефект в отсяването, или само ще внесе допълнително забавяне, но може без изчисление да се пробва поне сравнение с база от текущо известните прости числа, ако твоето не е по-голямо от най-голямото, открито досега - 2^57,885,161 − 1