Найдите НОД(2^100 - 1, 2^50 - 1). Какие свойства степеней и какие алгоритмы (Евклид, бинарный алгоритм, факторизация) лучше применять в этом конкретном случае и почему

12 Окт в 14:20
4 +2
0
Ответы
1

Ответ: НОД2100−1,250−12^100 − 1, 2^50 − 121001,2501 = 2^50 − 1 = 1 125 899 906 842 623.

Почему:

Общий факт: для целого a > 1 и целых m,n верно gcdam−1,an−1a^m − 1, a^n − 1am1,an1 = a^{gcdm,nm,nm,n} − 1. Частный и простой случай: если m кратно n, то a^n − 1 делит a^m − 1.Здесь 50 | 100, значит 2^50 − 1 делит 2^100 − 1 ведь2100−1=(250)2−1=(250−1)(250+1)ведь 2^100 − 1 = (2^50)^2 − 1 = (2^50 − 1)(2^50 + 1)ведь21001=(250)21=(2501)(250+1). Следовательно НОД равен 2^50 − 1.

Короткое доказательство общего факта:

Пусть d = gcdm,nm,nm,n. Тогда a^d − 1 делит оба числа еслиd∣m,nесли d | m,nеслиdm,n. Обратно, пусть g = gcdam−1,an−1a^m − 1, a^n − 1am1,an1. Тогда a^m ≡ 1 modgmod gmodg и a^n ≡ 1 modgmod gmodg, поэтому порядок a по модулю g делит и m, и n, значит делит d, следовательно a^d ≡ 1 modgmod gmodg и g | ad−1a^d − 1ad1. Имеем равенство.

Какие алгоритмы применять и почему:

Лучший подход здесь — использовать алгебраическое свойство степеней делимостьam−1приm∣nделимость a^m − 1 при m | nделимостьam1приmn. Это даёт ответ мгновенно и без вычисления огромных чисел.Алгоритм Евклида формально тоже подошёл бы: при делении 2^100 − 1 на 2^50 − 1 остаток равен 0 из−заделимостииз-за делимостииззаделимости, так что Евклид завершился бы за один шаг. Но чтобы увидеть это на практике, выгоднее пользоваться факторизацией по степеням, как выше.Бинарный алгоритм SteinSteinStein для НОД хорош для общих больших целых чисел в битовой реализации, но здесь он избыточен: структура степеней даёт простое решение.Полная факторизация чисел разложениенапростыемножителиразложение на простые множителиразложениенапростыемножители — это тяжёлая задача и ненужная в данном случае, поскольку НОД получаем без факторизации.

Итого: применяем свойство степеней делимостьприm∣nделимость при m | nделимостьприmn — это самый быстрый и логичный путь.

12 Окт в 16:04
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир