Masz zestaw płytek z symbolami z układu okresowego pierwiastków. Każdy symbol pojawia się raz. Zastanawiasz się nad słowami, ale chcesz wiedzieć, czy to możliwe, czy nie.
Wyzwanie
Napisz program w swoim ulubionym języku, który pobierze ciąg znaków jako parametr wejściowy. Możesz założyć, że dane wejściowe nie są puste, nie zawierają spacji i składają się ze znaków ASCII.
Twój program powinien pobrać ten ciąg i wygenerować prawdziwą wartość, jeśli słowo to może składać się z symboli z okresowej tablicy elementów, oraz wartość falsey, jeśli słowo nie może.
Aby utrudnić to wyzwanie, nie możesz użyć symbolu dwa razy. Więc jeśli używasz azotu N, nie możesz używać go Nponownie w tym samym słowie.
Zasady
Standardowe luki są niedozwolone. Możesz używać symboli z pierwiastków 1-118 (Wodór do Ununoctium). Możesz znaleźć listę wszystkich elementów tutaj . Możesz odczytać listę symboli z pliku lub argumenty wejściowe, jeśli chcesz.
Przypadki testowe:
Laos - true (LaOs)
Amputation - true (AmPuTaTiON)
Heinous - true (HeINoUS)
Hypothalamus - true (HYPoThAlAmUS)
Singapore - true (SiNGaPoRe)
Brainfuck - true (BRaInFUCK)
Candycane - false
Jest to wyzwanie dla golfa kodowego, wygrywa najkrótszy kod.
PRZED ZAMKNIĘCIEM JAKO DUPLIKAT: Chociaż może się to wydawać podobne do tego wyzwania , wydaje mi się, że jest inaczej, ponieważ nie jest to „Wygeneruj listę wszystkich słów, które są możliwe z układu okresowego”, to „Weź dowolne dane wejściowe i ustal, czy można to zrobić z układu okresowego ”