Para sua coisa mais difícil, você deve criar algo para que um computador descubra se algumas palavras são explicadas de maneira simples. Algo é explicado de uma maneira simples se ele usar apenas as dez centenas de palavras mais usadas. Caso contrário, é explicado de uma maneira difícil. Isso pode ser uma coisa de computador completo ou parte de uma coisa de computador. (programa ou função completa)
Há uma coisa para um computador ler que contém todas as dez centenas de palavras com um espaço entre cada palavra. O nome da coisa para o computador ler é chamado 'most used.txt'. Você pode pegar essa coisa deste computador .
A pessoa que usa a coisa do computador digitará algumas palavras. (Pode ser STDIN, argumentos de função ou argumentos de linha de comando) O computador deve dizer algo como verdadeiro se as palavras forem simples e algo como não verdadeiro se for difícil. ( verdade falsa ) A pessoa que faz o menor tempo possível para o computador é o melhor. As coisas que toda pessoa sabe que são ruins são ruins. ( lacunas padrão se aplicam )
Mais informações sobre como o computador funciona:
Não importa se as palavras são GRANDES ou pequenas.
As figuras que facilitam o conhecimento da palavra (pontuação) não importam. Portanto, se a pessoa que usa o computador diz "não", não é uma palavra diferente da palavra "não". Números e outras imagens também não importam. Portanto, se a pessoa disser "HE $$ ll9o", o computador deve lê-lo como "olá"
As pequenas linhas entre as palavras (traços) funcionam da mesma maneira que os espaços. Portanto, a palavra "iniciante cinco" é a mesma que a palavra "iniciante cinco".
Mais informações sobre como criar palavras como esta:
Respostas:
CJam, 41 bytes
Isso torna a suposição bastante impura que
most used.txt
está no diretório raiz, pois o CJam não pode manipular caminhos relativos.Como alternativa, temos as seguintes soluções baseadas na Web (78 e 29 bytes):
A maneira "correta" de fazer isso no CJam seria ler as duas entradas do STDIN (entrada na primeira linha, dicionário na segunda), o que é possível em 18 bytes:
Você pode tentar a última versão no intérprete CJam . (permalink testado no Chrome)
Exemplos
fonte
R, 106 bytes
Não tem certeza se é entender o desafio porque é difícil ler.
Isso cria uma parte sem nome de uma coisa de computador que aceita uma string e retorna algo como um verdadeiro ou como um não verdadeiro.
Ungolfed + explicação:
Obrigado a Dennis pela inspiração.
fonte
part-of-a-computer-thing(s){...}
deve valer pontos de bônus.Python 3, 148 bytes
Saídas
True
eFalse
Exemplos
fonte
don't
corretamente?True
. Isso está correto?most used.txt
por novas linhas? Não tenho 100% de certeza de como isso funciona, mas imagino que você esteja tentando dividi-lo em cada palavra individual do arquivo.Pitão, 35 bytes
Testes, onde o acima é o arquivo
common.pyth
Explicação:
fonte
APL (Dyalog) , 69 bytes
Supõe que o arquivo esteja no diretório atual.
Experimente online!
A primeira linha define uma função auxiliar de normalização e divisão na lista de strings, s :
s←
s é819⌶
o' '(
resultado em minúsculas da função a seguir, com um espaço como argumento à esquerda ...1↓¨
elimine um de cada uma das,
concatenações dos argumentos⊂⍨
cortados antes de cada elemento em que⊣
o argumento à esquerda=
é igual à,
concatenação dos argumentos)
aplicados ao'[- ]' '\W'⎕R' ' ''
painel de substituições do PCRE espaço → espaço, caractere não-palavra → nada∧/(
…)
É verdade ques
a⍞
entrada de texto normalizada e dividida∊
é membro do primeiro elementos
normalizado e dividido do (conteúdo, codificação, estilo de nova linha) do arquivo⊃
⎕NGET'most used.txt'
fonte
JavaScript (ES7), 161 bytes
(Não concorrente, pois a pergunta antecede a especificação do ES7)
Alguém conseguiu uma cópia do arquivo online que eu posso usar para criar um Snippet funcional?
fonte
then
e 7 bytes removendoalert
.then
é necessário que os s executem o código subsequente quando resolverem.PHP, 101 bytes
recebe entrada de STDIN, assume
saídas de dicionário de linha única com
1
(erro) para falsidade,0
(ok) para verdade. Corra com-R
.Divida a entrada por caracteres que não sejam palavras, faça um loop pela matriz (palavras) resultante:
se a palavra estiver no dicionário, continue; mais
exit(1)
.implícito
exit(0)
.ou simplesmente:
uma palavra após a outra: Se a palavra estiver nas palavras mais usadas, continue; else retorne 1. retorne 0.
e: eu poderia economizar dois pontos se as palavras mais usadas tivessem um espaço na frente e no final.
fonte
Java, 248 bytes
Com a frase passada como argumento.
entrada / saída:
Espaçados e com guias:
fonte
java.io.*
ejava.util.*
), bem como pítons importar declaração