Aby zrobić coś trudnego, musisz zrobić komputer, który sprawdzi, czy niektóre słowa są wyjaśnione w prosty sposób. Coś można wyjaśnić w prosty sposób, jeśli używa tylko dziesięciu najczęściej używanych słów. Jeśli nie, jest to wytłumaczone w trudny sposób. Może to być pełny komputer lub część komputera. (pełny program lub funkcja)
Jest coś do czytania przez komputer, który ma wszystkie dziesięćset słów ze spacją między każdym słowem. Nazwa rzeczy do odczytania przez komputer nazywa się „najczęściej używana.txt”. Możesz wziąć to z tego miejsca na komputerze .
Osoba korzystająca z komputera wprowadzi kilka słów. (Może to być argument STDIN, argumenty funkcji lub argumenty wiersza poleceń). Komputer musi powiedzieć coś takiego jak prawda, jeśli słowa są proste, a coś nieprawdy, jeśli jest trudne. ( prawda-fałsz ) Osoba, która robi najkrótszą rzecz dla komputera, jest najlepsza. Rzeczy, które każdy wie, że są złe, są złe. ( obowiązują standardowe luki )
Więcej informacji na temat działania komputera:
Nie ma znaczenia, czy słowa są DUŻE, czy małe.
Zdjęcia, które sprawiają, że słowo to jest łatwiejsze do zrozumienia (interpunkcja), nie mają znaczenia. Więc jeśli osoba korzystająca z komputera mówi „nie”, to nie jest to inne słowo niż słowo „nie”. Liczby i inne zdjęcia również nie mają znaczenia. Więc jeśli dana osoba powie „HE $$ ll9o”, komputer powinien przeczytać to jak „cześć”
Małe linie między słowami (myślniki) działają tak samo jak spacje. Tak więc słowo „up-goer-five” jest takie samo jak słowo „up-goer five”.
Więcej informacji na temat tworzenia takich słów:
Odpowiedzi:
CJam, 41 bajtów
To sprawia, że raczej nieczyste założenie
most used.txt
znajduje się w katalogu głównym, ponieważ CJam nie obsługuje ścieżek względnych.Alternatywnie mamy następujące rozwiązania internetowe (78 i 29 bajtów):
„Właściwym” sposobem wykonania tego w CJam byłoby odczytanie obu danych wejściowych ze STDIN (wejście w pierwszym wierszu, słownik w drugim), co jest możliwe w 18 bajtach:
Możesz wypróbować ostatnią wersję w interpretatorze CJam . (bezpośredni link przetestowany w Chrome)
Przykłady
źródło
R, 106 bajtów
Nie jest pewien, czy rozumie wyzwanie, ponieważ ma trudności z czytaniem.
Tworzy to nienazwaną część komputerowej rzeczy, która akceptuje ciąg znaków i zwraca coś takiego jak prawda lub nieprawda.
Niegolfowane + wyjaśnienie:
Dzięki Dennis za inspirację.
źródło
part-of-a-computer-thing(s){...}
powinno być warte punktów bonusowych.Python 3, 148 bajtów
Wyjścia
True
iFalse
Przykłady
źródło
don't
poprawnie wejście ?True
. Czy to jest poprawne?most used.txt
nowe linie? Nie jestem w 100% pewien, jak to działa, ale wyobrażam sobie, że próbujesz podzielić je na poszczególne słowa w pliku?Pyth, 35 bajtów
Testy, w których powyższym jest plik
common.pyth
Wyjaśnienie:
źródło
APL (Dyalog) , 69 bajtów
Zakłada, że plik znajduje się w bieżącym katalogu.
Wypróbuj online!
Pierwsza linia definiuje normalizacji i podział-do-list-of-strun pomocnik funkcja S :
s←
s to wynik poniższej funkcji819⌶
zapisany małymi literami' '(
, ze spacją jako lewy argument…1↓¨
upuść po jednym z każdego,
konkatenacji argumentów⊂⍨
wyciętych przed każdym elementem, w którym⊣
lewy argument=
jest równy,
konkatenacji argumentów)
zastosowanych do'[- ]' '\W'⎕R' ' ''
zamiany PCRE dash / spacja → spacja, non-word-char → nic∧/(
… Czy)
to prawda, żes
znormalizowane i podzielone⍞
wprowadzanie tekstu∊
są elementamis
znormalizowanego i podzielonego⊃
pierwszego elementu⎕NGET'most used.txt'
(zawartości, kodowania, stylu nowej linii) plikuźródło
JavaScript (ES7), 161 bajtów
(Niekonkurencyjne, ponieważ pytanie wcześniejsze niż specyfikacja ES7)
Czy ktoś ma kopię pliku online, której mogę użyć do utworzenia działającego fragmentu kodu?
źródło
then
i 7 bajtów, usuwającalert
.then
s są zobowiązane do wykonania następnego kodu, gdy zostaną rozwiązane.PHP, 101 bajtów
pobiera dane wejściowe ze STDIN, zakłada zamknięcie słownika jednowierszowego
z
1
(błąd) dla fałszu,0
(ok) dla prawdy. Uruchom z-R
.Podziel wprowadzanie na znaki niebędące wyrazami
, przejdź przez wynikową tablicę (słowa): jeśli słowo znajduje się w słowniku, kontynuuj; indziej
exit(1)
.dorozumiany
exit(0)
.lub po prostu:
jedno słowo po drugim: jeśli słowo zawiera najczęściej używane słowa, kontynuuj; w przeciwnym razie zwróć 1. zwróć 0.
i: Mógłbym zapisać dwa punkty, gdyby najczęściej używane słowa miały spacje z przodu i na końcu.
źródło
Java, 248 bajtów
Z frazą przekazaną jako argument.
wejście wyjście:
Rozstawiony i tabulowany:
źródło
java.io.*
ijava.util.*
), podobnie jak instrukcja importowania pytonów