私は単純なゲームに取り組んでおり、「helloworld」などの単語やフレーズを取得して一連の数字に変換する必要があります。
基準は次のとおりです。
- 数字は区別する必要があります
- 数列の最大数を構成する機能が必要です。IE10の合計数。
- 各番号の最大範囲を順番に構成する機能が必要です。
- 決定論的である必要があります。つまり、同じ入力フレーズに対して毎回同じシーケンスを取得する必要があります。
私は次のように問題を分解しようとしました:
- 文字をASCII数値コードに変換します: "hello world" =
104 101 108 108 111 32 119 111 114 108 100
- 総数(この場合は10)を満たすまで、1つおきの数を削除します。
- 数値>最大数値の場合は数値を計算し、数値<=最大数値になるまで2で除算します
- 番号が重複している場合は、満足するまで最初の出現を増減します。(これは、別の複製を解決することによって複製を作成できるため、問題を引き起こす可能性があります)
これを行うためのより良い方法はありますか、それとも私は正しい方向に進んでいますか?上で述べたように、私は区別を取り除くことで問題にぶつかるかもしれないと思います。