Re: Задача про степень большого числа :)
От: Pushkin Россия www.linkbit.com
Дата: 10.02.03 09:45
Оценка:
Здравствуйте, OlegO, Вы писали:

OO>Очень красивая задача (особенно ее решение):


OO>Для всех чисел от 1 до 1000000 , найти все числа третья степень которого в конце содержит само число.

OO>

OO>PS: В идеале решается с использованием только Int32 и без каких-либо классов для работы с большими числами.

Если число N k-значное, то выражение "в конце его m-той содержится само число" означает, что

N^m = N (mod 10^k)

Так как

a*b (mod c) = a (mod c) * b (mod c)

то последовательно перемножая N надо всё время проводить деление по модулю, т.е. оставлять только последние k цифр. Поэтому больших чисел получаться не должно — максимум квадрат исходного числа.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.