Prawdopodobnie znasz sekwencję Fibonacciego, w której pierwsze dwa terminy są 0, 1
(lub czasami 1, 1
), a każdy następny po nich jest sumą dwóch poprzednich. Zaczyna się tak:
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...
Czasami sekwencja zawiera liczby, które mają szczególny wzór, który uważam za interesujący: różnica między dowolną parą sąsiednich cyfr jest taka sama, jak każdej innej pary. Na przykład w sekwencji rozpoczynającej się 0, 1
od 18. termin to 987
. 9-8=1
a 8-7=1
. Jestem lekko zadowolony.
Wyzwanie
Biorąc pod uwagę dwie wartości początkowe F(0)
i F(1)
, wypisz każdą liczbę w sekwencji wygenerowanej przez to, F(n) = F(n-1) + F(n-2)
która spełnia następujące kryteria:
- Różnica między dowolną parą sąsiednich cyfr jest taka sama, jak każdej innej pary
- Ma co najmniej trzy cyfry (liczby 1 i 2 cyfry nie są interesujące dla tego wzoru)
Wejście
- Dwie nieujemne liczby całkowite mniejsze niż 10 ** 10 (10 miliardów)
Wynik
- Wszystkie liczby całkowite mniejsze niż 10 ** 10 i spełniające kryteria w części Wyzwanie
- Dopuszczalne jest wyświetlanie cyfr większych niż 10 ** 10, ale nie jest to wymagane
- Biorąc pod uwagę, że powtarzające się cyfry odpowiadają wzorowi (np.
777
), Możliwe jest, że istnieją nieskończone liczby, które spełniają kryteria, ale Twój program nie musi wyświetlać danych zawsze - Jeśli nie ma takich liczb całkowitych, wypisz cokolwiek chcesz, o ile nie jest to liczba (nic, null, pusta tablica, komunikat o błędzie, smutna twarz itp.)
- Jeśli liczba pasująca do wzorca pojawia się więcej niż jeden raz w sekwencji, możesz ją wypisać raz lub tyle razy, ile się pojawi
- Jeżeli dane wejściowe spełniają kryteria, powinny zostać uwzględnione w danych wyjściowych
Zasady
- Dane wejściowe i wyjściowe mogą być w dowolnym standardowym formacie
- Standardowe luki są zabronione
- To jest golf golfowy, więc wygrywa najkrótszy kod w bajtach
Przykłady / przypadki testowe
Input , Output
[1,10] , []
[0,1] , [987]
[2,1] , [123]
[2,3] , [987]
[61,86] , [147]
[75,90] , [420]
[34,74] , [1234]
[59,81] , [2468]
[84,85] , [7531]
[19,46] , [111]
[60,81] , [222]
[41,42] , [333]
[13,81] , [444]
[31,50] , [555]
[15,42] , [666]
[94,99] , [777]
[72,66] , [888]
[3189,826] , [888888888]
[15,3] , [159,258]
[22,51] , [321,1357]
[74,85] , [159,4444]
[27,31] , [147,11111]
[123,0] , [123,123,123,246,369]
[111,0] , [111,111,111,222,333,555,888]
[111,222] , [111,222,333,555,888]
[33345,692] , [987654321]
[3894621507,5981921703] , [9876543210]
[765432099,111111111] , [111111111,876543210,987654321]
[1976,123] , [123, 2222, 4321, 6543, 45678]
[1976, 123] -> [123, 2222, 4321, 6543, 45678]
,[3189, 826] -> [888888888]
,[33345, 692] -> [987654321]