Chińskie twierdzenie o resztach może być bardzo przydatna w arytmetyce modularnej.
Rozważmy na przykład następujący zestaw relacji zgodności:
W przypadku zestawów warunków kongruencji jak ten, w którym wszystkie zasady ( 3, 5, 7w tym przykładzie) są wspólnie pierwsza z siebie, że będzie jeden i tylko jeden całkowitą nod 1i produkt z zasady ( 3*5*7 = 105w tym przykładzie) włącznie, który spełnia stosunki .
W tym przykładzie liczba byłaby 14wygenerowana według tej formuły:
gdzie 2, 4, and 0podano z powyższego przykładu.
70, 21, 15są współczynniki o wzorze i są one zależne od podstawach 3, 5, 7.
Aby obliczyć współczynniki wzoru ( 70, 21, 15w naszym przykładzie) dla zestawu zasad, stosujemy następującą procedurę.
Dla każdej liczby aw zestawie zasad:
- Znajdź produkt wszystkich innych baz, oznaczonych jako
P. - Znajdź pierwszą wielokrotność,
Pktóra pozostawia resztę1po podzieleniu przeza. Jest to współczynnika.
Na przykład, aby obliczyć współczynnik odpowiadający podstawie 3, znajdujemy iloczyn wszystkich pozostałych zasad (tj. 5*7 = 35), A następnie znajdujemy pierwszą wielokrotność tego produktu, która pozostawia resztę 1po podzieleniu przez zasadę.
W tym przypadku 35pozostawia resztę 2po podzieleniu przez 3, ale 35*2 = 70pozostawia resztę 1po podzieleniu przez 3, więc 70jest to odpowiedni współczynnik dla 3. Podobnie 3*7 = 21pozostawia resztę 1po podzieleniu przez 5i 3*5 = 15pozostawia resztę 1po podzieleniu przez 7.
W skrócie
Dla każdej liczby aw zestawie liczb:
- Znajdź iloczyn wszystkich pozostałych liczb oznaczonych jako
P. - Znajdź pierwszą wielokrotność,
Pktóra pozostawia resztę1po podzieleniu przeza. Jest to współczynnika.
Wyzwanie
- Wyzwaniem dla zestawu dwóch lub więcej zasad jest znalezienie zestawu odpowiednich współczynników.
- Zestaw podstaw jest gwarantowany jako para-podstawowa, a każda podstawa jest większa niż 1.
- Twoje dane wejściowe to lista liczb całkowitych jako
[3,4,5]ciąg wejściowy lub ciąg znaków oddzielonych spacjami"3 4 5"lub dane wejściowe działają. - Wynik powinien być albo listą liczb całkowitych, albo ciągiem znaków oddzielonych spacją, który oznacza zbiór współczynników.
Przypadki testowe
input output
[3,5,7] [70,21,15]
[2,3,5] [15,10,6]
[3,4,5] [40,45,36]
[3,4] [4,9]
[2,3,5,7] [105,70,126,120]
[40,27,11] [9801,7480,6480]
[100,27,31] [61101,49600,56700]
[16,27,25,49,11] [363825,2371600,2794176,5583600,529200]
Wielkie dzięki dla Dziurawej Zakonnicy za pomoc w napisaniu tego wyzwania. Jak zawsze, jeśli problem jest niejasny, daj mi znać. Powodzenia i dobrej gry w golfa!





