作者:空白画叶子 | 来源:互联网 | 2022-11-28 08:43
我输入包含五个大写的大写英文字母,例如ABCDE
我需要将其转换为两个字符的唯一ASCII输出.例如ABCDE
,ZZZZZ
两者都应该提供两种不同的输出
我已经转换ABCDE
为十六进制给了我4142434445
,但是从这可以得到我需要的两个字符输出值?
示例:
INPUT1 = ABCDE
转换为十六进制=4142434445
INPUT2 = 4142434445
OUTPUT = ?? 任何2个ASCII字符
INPUT1 =的其他示例
BIRAL
BRMAL
KLAAX
1> Thomas Kimbe..:
所以你从一个5位数的26位数字开始,你想把它压缩成一个带有基数n的2位数方案?
所有可能的1-5位数字基数为26的数字为您提供26 ^ 5 = 11,881,376的数字空间.
所以你想要最小的n,其中n ^ 2> = 11,881,376.
这给你3446.
现在,您可以在UTF中找到合适的字形块,在那里您可以可靠地阻止3446个单独的字符作为新的基础/字母表.并构建一个从您的5-char base-26 ABCDE类型编号到您的2-char base-3446 wierd-glyph数字的映射.祝你好运.
由于它只有128个可打印字符,所以ASCII的种类不够多.将自己限制为2个ASCII字符意味着您只能处理16384的数字空间.