테트리스와 비슷한 게임을 만들고 있는데 두 가지 차이점이 있습니다. 화면은 이미 타일로 채워져 있고 (닌텐도 DS 및 PC 용 퍼즐 퀘스트에서와 같이) 각 타일에는 글자가 있습니다. 플레이어의 목표는 타일과 함께 유효한 단어를 만들어 타일을 제거하는 것입니다. 단어는 대각선을 제외하고 어떤 방향으로도 서로 옆에 문자를 배치하여 형성됩니다.
플레이어는 원하는만큼 많은 공간에 대해 타일의 전체 행을 왼쪽 또는 오른쪽으로 또는 타일의 전체 열을 위 또는 아래로 이동할 수 있습니다 (행 / 열의 이동이 보드의 한계를 초과하는 경우, 한도를 초과하는 문자는 행 / 열의 다른 끝에 표시되는 "사이클"입니다. 플레이어의 행동이 끝나면 게임은 전체 단어를 확인하여 유효한 단어를 찾고 해당 단어를 형성하는 글자를 보드에서 제거해야합니다. 제거 된 문자 위의 문자는 제거 된 문자 대신 쓰러지고 보드가 다시 채워질 때까지 새 문자가 화면 상단에서 떨어집니다.
나는 이미 일련의 문자가 유효한 영어 단어인지 결정하는 선형 알고리즘을 작성했습니다. 내가 겪고있는 문제는 보드에서 유효한 단어를 어떻게 확인할 수 있습니까? 무차별적인 힘이 유일한 방법입니까? 보드에서 가능한 모든 조합을 테스트하여 유효한지 여부를 확인하는 것은 작은 (5x5) 보드에서도 매우 느립니다. 어떤 도움이라도 대단히 감사하겠습니다!