Cel
Z Wikipedii :
Akronim rekurencyjny to akronim, który odnosi się do siebie w wyrażeniu, za którym stoi.
Twoim celem jest sprawdzenie, czy łańcuch jest akronimem rekurencyjnym.
- Akronim to pierwsze słowo
- W słowach nie jest rozróżniana wielkość liter, oddzielone pojedynczym odstępem.
- Podany ciąg nie zawiera interpunkcji ani apostrofu.
- Tylko pierwsza litera każdego słowa może być częścią akronimu.
Musisz także podać słowa funkcyjne . Dla uproszczenia każde słowo można uznać za słowo funkcyjne.
Przykład
f("RPM Package Manager") => { true, [] }
f("Wine is not an emulator") => { true, ["an"] }
f("GNU is not Unix") => { true, ["is"] }
f("Golf is not an acronym") => { false }
f("X is a valid acronym") => { true, ["is","a","valid","acronym"] }
Możesz podać pełny program lub funkcję.
Łańcuch wejściowy można pobrać z STDIN lub jako argument funkcji.
Wynik może być prawdziwy / fałszywy, 0/1, tak / nie ...
Lista słów funkcyjnych (każdy format listy jest poprawny) musi być podana tylko wtedy, gdy jest to rekurencyjny akronim (nawet jeśli lista jest pusta) . Nie musisz zachowywać wielkich liter słów funkcyjnych.
Kryteria wygranej
To jest golf golfowy , najkrótszy kod wygrywa.