Paras vastaus
2 ^ 30 * 3 ^ 20
= (2 ^ 3) ^ 10 * (3 ^ 2) ^ 10
= 8 ^ 10 * 9 ^ 10
= (8 * 9) ^ 10
= 72 ^ 10
koska 72 mod 7 = 2,
72 ^ 10 mod 7
= (2 ^ 10) mod 7
= 1024 mod 7
= 2
Vastaa
Voit vain käynnistää tietokoneen ja pyytää sitä, ja minä sai 1091132094649, mutta sinun on tarkoitettava, kuinka tämä voidaan tehdä pienellä lyijykynällä ja paperilla, tai kuinka paljon suurempi ongelma voidaan tehdä tietokoneella ilman ylimääräistä suorittimen jaksojen käyttöä.
Luultavasti haluavat Kiinan jäljellä olevan lauseen tähän. 20 = 2 ^ 2 * 5, joten 20 ^ 10 = 2 ^ 20 * 5 ^ 10.
Joten mikä on 3 ^ 30 mod 5 ^ 10? Työskentele perustason 5 laskennassa. 3 ^ 3 = 102, 3 ^ 6 = 102 * 102 = 10404, 3 ^ 12 = 114001231, kerrotaan nyt 3 ^ 3 = 102: lla, mutta Hylkäämällä kaikki numerot 5: n kymmenennen arvon yli: 12133131112 leikkaa 2133131112: n. ulos, hylkäämällä kaikki 5: n kymmenennen voiman yläpuolella, kun menet: 4304012044. Pohja 10, palataksesi tuttuun nurmikkoon, tämä on 9047774.
Nyt haluat 3 ^ 30 mod 2 ^ 20. Sama pora, mutta tällä kertaa työskentelet binaarisena. Loppujen lopuksi opit, että se on 686265 mod 2 ^ 20.
Nyt on aika käyttää Kiinan jäännöslausetta. Tässä sanotaan, että kun otetaan huomioon kaksi suhteellisen alkumoduulia, tässä 2 ^ 20 ja 5 ^ 10, ja kongruenssiolosuhteet mod kukin, tässä vastaus on 9047774 mod ensimmäinen ja 686265 mod toinen, 0: n ja tulon välillä on ainutlaatuinen n moduulisi, vähemmän 1. Ja löydät sen ajatuksen kautta, että jos n = mod p ja b mod q, niin n = a + pk niin (a + pk) = b mod q. joten pk = (b-a) mod q, joten k = (käänteinen p) * (b-a) mod q. Ja p mod q: n käänteinen löydetään laajennetulla euklidisella algoritmilla. (Pura p: n ja q: n gcd, tietäen hyvin, että se on lopulta 1, mutta pidä kirjaa siitä, mitä opit s * p + t * q = pienemmästä ja pienemmästä, kun menet, kunnes saat s * p + t * q = 1 ja sitten s on p mod q: n käänteinen.)