
Boggleボードと単語(またはなし!)が与えられたすべての可能な単語を見つけてください。アルゴリズムがWebでどのように機能するかについての視覚的な表現があります。
Webデモ:すぐに登場!
フロントエンドは、 TypeScriptとNext.jsフレームワークを使用して開発され、Tailwind CSSは選択されたCSSフレームワークとして使用されます。
このプロジェクトに選択されたバックエンドフレームワークは、パフォーマンスのあるPythonベースのWebフレームワークであるFastapiです。 Fastapiでは、FrontEnd(クライアント)と通信するAPIエンドポイントを作成します。これらのエンドポイントは、特定のBoggleボードをクライアントから解読し、 Pyggleを使用してすべての可能な組み合わせ、座標、スコアを返すように設計されています。ユーザーは、 OpenCVを使用して画像を事前に処理し、 EasyCORCORを使用してBoggleボードからキャラクターを正確に取得するためにOpenCVを使用するBoggleボードの画像を送信することもできます。
その後、単語と座標は、フロントエンドがレンダリングするJSONペイロードとしてクライアントに送信されます。
Pypi:https://pypi.org/project/pyggle/
pip install pyggle入力はケースに敏感です(ボード用)。
入力は、次のもので構成されます:n x mボードは、スペースで区切られた行を持つ文字列として。または、各要素がボード上の文字であるリストのリストを渡すことができます。
単語が引数として渡されない場合、479kの単語で構成されるテキストファイルを利用します。
公式がブールの引数として与えられていない場合、長さに関係なくすべての単語を見つけ、文字「q」は「qu」として表されません。公式がブールの引数として渡された場合、アルゴリズムはBoggleの公式ルールに従います。 pyggleは解決し、
from pyggle import Boggle
board = "ea st"
boggle = Boggle ( board )
boggle . print_result () pyggleのその他の機能については、次のことを確認してください。
lib/examples/2x2_example.py一般的な機能とより特異性についてlib/examples/qu_example.py文字「q」が「qu」を表す例についてはlib/docs/boggle-api.md「ae」または「aes」または「ast」がどのように単語であるかはわかりませんが、w/e:p
a: [(0, 1)]
ae: [(0, 1), (0, 0)]
aes: [(0, 1), (0, 0), (1, 0)]
aet: [(0, 1), (0, 0), (1, 1)]
as: [(0, 1), (1, 0)]
ase: [(0, 1), (1, 0), (0, 0)]
ast: [(0, 1), (1, 0), (1, 1)]
at: [(0, 1), (1, 1)]
ate: [(0, 1), (1, 1), (0, 0)]
ates: [(0, 1), (1, 1), (0, 0), (1, 0)]
e: [(0, 0)]
ea: [(0, 0), (0, 1)]
east: [(0, 0), (0, 1), (1, 0), (1, 1)]
eat: [(0, 0), (0, 1), (1, 1)]
eats: [(0, 0), (0, 1), (1, 1), (1, 0)]
es: [(0, 0), (1, 0)]
est: [(0, 0), (1, 0), (1, 1)]
et: [(0, 0), (1, 1)]
eta: [(0, 0), (1, 1), (0, 1)]
etas: [(0, 0), (1, 1), (0, 1), (1, 0)]
s: [(1, 0)]
sa: [(1, 0), (0, 1)]
sae: [(1, 0), (0, 1), (0, 0)]
sat: [(1, 0), (0, 1), (1, 1)]
sate: [(1, 0), (0, 1), (1, 1), (0, 0)]
se: [(1, 0), (0, 0)]
sea: [(1, 0), (0, 0), (0, 1)]
seat: [(1, 0), (0, 0), (0, 1), (1, 1)]
set: [(1, 0), (0, 0), (1, 1)]
seta: [(1, 0), (0, 0), (1, 1), (0, 1)]
st: [(1, 0), (1, 1)]
sta: [(1, 0), (1, 1), (0, 1)]
t: [(1, 1)]
ta: [(1, 1), (0, 1)]
tae: [(1, 1), (0, 1), (0, 0)]
tas: [(1, 1), (0, 1), (1, 0)]
te: [(1, 1), (0, 0)]
tea: [(1, 1), (0, 0), (0, 1)]
teas: [(1, 1), (0, 0), (0, 1), (1, 0)]
ts: [(1, 1), (1, 0)]