Bibliotekarz przyłapał cię na oszukiwaniu w pracy za pomocą algorytmu sortowania , więc teraz jesteś karany. Nakazano ci utworzyć kod, aby bibliotekarz mógł wywrzeć wrażenie na obiekcie, którego nie odczuwał, uczuciu matematyki. Więc to , co „inne obowiązki przypisane” środków ...
Wszyscy znają naturalną sekwencję liczb w bazie 10, zwaną N :
0, 1, 2, 3, 4, 5, 6, ...
Na tej podstawie możemy wygenerować sekwencję liczb pierwszych, nazwijmy ją P , tak że każdy element w P ma dokładnie dwa dzielniki w N , a mianowicie 1sam. Ta sekwencja to:
2, 3, 5, 7, 11, 13, ...
OK, jak na razie dość rutyny.
Bibliotekarz pomyślał o fajnej funkcji F (x, y), która pobiera liczbę xz N , z warunkiem 0 <= x <= 9i liczbę yz N , i wstawia xdo yrozwinięcia dziesiętnego w każdej pozycji (tj. Wstawianie, wstawianie lub dołączanie xdo y), a następnie zwraca posortowany zestaw nowych liczb.
Na przykład F (6, 127) spowoduje
1267, 1276, 1627, 6127
Ale to wciąż trochę nudne. Bibliotekarz chce urozmaicić sprawę nieco bardziej , określając nową funkcję z -> {p : p in P and F(z,p) subset of P}, posortowaną rosnąco.
Na przykład, z (7) byłoby
3, 19, 97, 433, 487, 541, ...
ponieważ 37i 73są zarówno pierwsi, jak 719 179i 197wszyscy pierwsi, itp.
Zauważ, że z (2) jest puste, ponieważ żadna liczba pierwsza z 2dołączonym nigdy nie będzie pierwsza Podobnie dla {0,4,5,6,8}.
Twoim zadaniem jest napisanie kodu, który wygeneruje i wyśle pierwsze 100 liczb w sekwencji z (x) dla danego x .
Wejście
Pojedyncza liczba całkowita x taka, że 0 <= x <= 9. Dane wejściowe można wprowadzać za pomocą argumentu funkcji, STDIN lub równoważnego.
Wynik
Sekwencja pierwszych 100 liczb, ograniczona przez wybór, do STDOUT lub równoważnej, tak że sekwencja spełnia z (x) jak opisano powyżej. Jeśli z (x) jest puste, tak jak w przypadku {0,2,4,5,6,8}, Empty Setzamiast tego należy podać słowa .
Ograniczenia
- To jest kod-golf, ponieważ musisz zapisać to na kartę indeksową, aby bibliotekarz mógł pokazać nauczyciela matematyki, a twoja ręka łatwo się kurczy.
- Obowiązują standardowe ograniczenia luk. Bibliotekarz nie toleruje oszustów.
Sekwencje referencyjne
x = 1: A069246
x = 3: A215419
x = 7: A215420
x = 9: A215421
Powiązane: Znajdź największą kruchą liczbę pierwszą / Znajdź najmniejszą liczbę pierwszą z podłańcucha / Znajdź największą liczbę pierwszą, która wciąż jest liczbą pierwszą po usunięciu cyfry
"jest niepotrzebną, ale bardzo przyjemną pracą.