Um solucionador para o jogo de palavras da flor. O solucionador é apenas para fins de educação não comercial. Todas as marcas de trandême pertencem a Merriam-Webster.
https://kensnyder.github.io/blossom-solver/
Adoro tocar flores, mas sempre me pergunto como minha pontuação se compara à melhor pontuação possível. Essa ferramenta tenta encontrar uma pontuação alta para um determinado quebra -cabeça. Você também pode usá -lo no "modo dicas" antes de concluir o quebra -cabeça. Isso lhe dará dicas, incluindo o número de pangramas possíveis, número de palavras possíveis, pontuação alta e primeiras letras das principais palavras.
Merriam-Webster não especifica o que o dicionário é usado para o jogo. Temos apenas algumas diretrizes:
Além disso, devido à natureza do jogo, temos as seguintes restrições:
Muitos dicionários estão disponíveis online. O dicionário Scrabble é talvez o melhor palpite no conteúdo do dicionário de flor, mas não contém palavras com mais de 15 letras, porque são impossíveis de tocar no Scrabble.
Este solucionador de flores inclui 3 dicionários diferentes para 3 níveis de habilidade diferentes.
Comecei com o maior dicionário que pude encontrar, neste repositório do GitHub: https://github.com/dwyl/english-words, que tem cerca de 370 mil palavras.
Observe que ele e todos os outros arquivos mencionados abaixo estão no diretório de dados deste repositório.
data/full-dictionary.txt
, contém cerca de 370 mil palavras.data/*-letters.txt
data/proper-nouns.txt
data/not-in-dictionary.txt
data/medical-words.txt
data/swear-words.rot13.txt
data/uncompiled-level3.txt
, usei scripts/compile-words.mjs
data/full-dictionary.txt
data/wiktionary-100k.txt
.data/uncompiled-level2.txt
. Esse arquivo contém 26k palavras.Em breve. Provavelmente usarei o dicionário de nível 2 e removerei as palavras das quais eu pessoalmente nunca ouvi falar.
Depois de concluir um jogo, Blossom mostrará todas as palavras e pangramas que eram possíveis. Olhando para as palavras da lista, descobri algumas palavras que, no jogo de flor que não estão em data/full-dictionary.txt
. Eu adicionei manualmente essas palavras a data/discovered-words.txt
. Eles estão incluídos nos dicionários finais não compilados e compilados. Da mesma forma, as palavras que encontrei em nosso dicionário, mas não em Blossom, são salvas em data/discovered-non-words.txt
.
Usei frequências de letras em cada dicionário para ordenar o alfabeto da carta menos comum à carta mais comum. O bot usa a pontuação e a frequência da letra para escolher suas peças finais. É mais ingênuo que a permutação ou algum algoritmo matemático, mas geralmente obtém a pontuação máxima ou muito perto dele.
Eu escolhi pré -compilar os dicionários para permitir que o solucionador forneça soluções em questão de milissegundos. A desvantagem é que seu navegador precisa baixar esses arquivos maiores após o carregamento da página.
Por exemplo, aqui está o esquema para o formato de compilação:
mustard24+
muster11
mustered27mustrd32e+
Exemplo de quebra:
# mustard is a pangram worth 24 points regardless of which letter is the bonus petal
mustard24+
# muster is not a pangram and worth 11 points regardless of which letter is the bonus petal.
muster11
# mustered is a pangram
# If the bonus petal is m, u, s, t, r or d, it is worth 27 points
# If the bonus petal is e, it is worth 32 points
mustered27mustrd32e+
Licença ISC (ISC)