19 października 2020

Wstępne informacje o bardzo szybkim znajdowaniu dzielników

Poprosiłem pewną osobę, by przetestować sposób rozkładu liczb. I udało się. Osoba ta znalazła dzielniki mojej 'ulubionej' wartości 8934053 w czterech krokach. Czyli tylu, ile cyfr liczą sobie dzielniki. 

Sposób polega na zastosowaniu dzielenia wstecz, w którym znajduję najmniej znaczące cyfry potencjalnych dzielników. Np. cyfra jedności to 3, to dzielniki mają cyfrę jedności 1 oraz 3, albo druga ewentualność 7 i 9. 

Każdy krok ma dwie fazy. W założeniu znamy już najmniej znaczące cyfry liczby a*b.

Pierwsza faza generuje wszystkie możliwe iloczyny (xa)*(yb), gdzie x,y to wszystkie potencjalne możliwości cyfr. Jest ich w systemie dziesiątkowym 100. Ale z porównania z cyfrą na zadanej pozycji okazuje się, że łatwo wyeliminuję 90 z nich. pozostaje tylko 10. 

Zrobiłem szablon w Escelu, mnożę (0a), (1a), ... (9a) przez (0b), (1b),... (9b). 

Od liczby rozkładanej odejmuję tę wartość i dzielę przez potęgę 10 taką, że tylko 10 liczb pozostaje całkowite - to są kandydatki przechodzące do drugiej fazy. 

Np. w drugim kroku wychodząc od 7*9 badam pary, wśród których przewija się między innymi 87*19.  

Druga faza to eliminacja tych kilkunastu wartości. Rozszerzam aktualny system trzykrotnie dla tych już zmniejszonych wartości. I tu napotykaliśmy na silne związki odpowiedzi (xa)*(yb) z cyfrą liczby npozycji obliczanej w danym kroku  oraz samym a*b. Reszty rozszerzonego trzykrotnie systemu po uwzględnieniu cyfry liczby n były całkowitymi wielokrotnościami a*b dla dokładnie tych cyfr, które miały dzielniki. Dla pozostałych iloczynów pojawiały się reszty. I w ten sposób dochodziliśmy do jednej pary, która okazywała się kolejnymi bardziej znaczącymi cyframi dzielników.

W jednym kroku pojawiła się nawet szansa na uzyskanie gotowego wzoru. Zapomnieliśmy niestety o szczegółach przygotowania liczb przechodząc dalej.

Wiem, że jeśli z liczby n zabiorę resztę modulo p, podzielę przez 10p i przedstawię w systemie o podstawie 3p, to reszta będzie specyficznie większa, jeśli od n odejmę a*b, podzielę przez 10p i dopiero teraz przekonwertuję na system o podstawie 3p. 

Oraz, im wiecej znanych cyfr dostawały dzielniki, tym obliczenia stawały się prostsze i łatwiej było wskazać kolejną parę prawidłowych cyfr dzielników (x,y). W ostatniej fazie nawet nie musieliśmy rozszerzać, bo kolejna para prawdłowych cyfr sama się nasuwała.


Brak komentarzy: