☝のやつの計算量を削減しました。 ユーザー名を数字に変換します。 バックパックに入れる際は、リスト[文字],[38^n]の中身をtxtファイル経由で移してください。 ユーザー名に使用可能なのは38種類の文字、20文字までのため、組み合わせは38^20通りで、32桁です。つまり、ユーザー名を数字に変換するなら最短文字数は32文字になる、ということです。10^32以上38^20以下のすべての整数があるユーザー名に対応しています。 今回は一律32文字にしてみました。 計算量が多く、複雑なためオーバーフローしない計算機を使いました。そのため、少し変換が遅いです。 scratchの場合、0.6秒ほどかかってしまう場合がありましたが、このプロジェクトでは一瞬で求まります! TurboWarpは変わらず一瞬で求まります。 なお、本当にユーザー名として存在可能な文字列かの判定は行っていないため、存在不可能なユーザー名(20字越え、非対応文字を使用)でも変換されますが、戻せません。(21字目以降、その文字に対応する数字(例:a→11 z→36)に38^(20-n) [nは何文字目か]をかけてそれらを合計するプログラムです。そのため、元に戻したとき、18文字目までは正常で、19,20文字目は21文字目の数値によって少しずれます。非対応文字を変換した場合は色々バグります。) デメリット:バックパックに入れる際にリストをtxtファイル経由で移行する量が増えた。 (今までは対応文字一覧の38字のみだったが、これは38^n(nは19から0まで)のリストが必要。) 400ブロック近く削減 高性能巨大数計算機:@choco0424