(nie będzie znalezienie Findlub łowienie tryCatch, choć)
To druga część wieloczęściowej serii implementacji interesujących funkcji R. Część pierwszą można znaleźć tutaj .
Zadanie:
Masz zaimplementować funkcję Rmatch w jak najmniejszej liczbie bajtów.
Wkład:
x, prawdopodobnie pusta lista / tablica liczb całkowitychtable, prawdopodobnie pusta lista / tablica liczb całkowitychnomatch, jedna wartość całkowitaincomparables, prawdopodobnie pusta lista / tablica liczb całkowitych
Wydajność:
- pojedyncza tablica / lista liczb całkowitych
Oo równej długościx, gdzie każda wartośćO[i]reprezentuje:- Indeks
jz pierwszej wartości wtablektórymtable[j]==x[i] nomatch, wskazując, że żadna wartość w nietablejest równax[i]OR, którax[i]znajduje się na liścieincomparables.
- Indeks
Przypadki testowe
All in the form x, table, nomatch, incomparables -> output
outputs
[], [1,2,3], 0, [5] -> []
[1, 2, 3], [], 0, [5] -> [0, 0, 0]
[9, 4, 3, 6, 3], [9, 8, 7, 6, 5, 4, 3, 2, 1], -1, [4] -> [1, -1, 7, 4, 7]
[8, 6, 7, 5, 3, 0, 9], [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8, 9, 7, 9, 3, 2, 3, 8, 4, 6, 2, 6], 1000, [1] -> [12, 8, 14, 5, 1, 1000, 6]
W razie potrzeby można wygenerować więcej przypadków testowych.
Dodatkowe zasady:
- R ma wskaźniki oparte na 1, ale spójne wskaźniki alternatywne są dopuszczalne. Możesz więc użyć wskaźników, które zaczynają się od 3 lub 17, czy cokolwiek innego, ale musi to być spójne i musisz to wskazać w swojej odpowiedzi.
- Jeśli wybrałeś język, który to robi, zaimplementuj również własne rozwiązanie.
- Wyjaśnienia są mile widziane.
To jest golf golfowy , więc wygrywa najkrótsze rozwiązanie w bajtach!
4jest włączony incomparables, więc nie można go dopasować. Jeśli Twój język nie obsługuje liczb ujemnych, możesz wymagać liczb nieujemnych, ale podaj to założenie w swoim zgłoszeniu.
make.