介绍
注意:这不是鼓励作弊的方法。正如C'O'Bʀɪᴇɴ所说的那样,学习是通过测试的最佳解决方案:3。
考虑对多项选择测试的以下答案:
ABCBCAAB
下表说明了答案是否匹配:
A B C B C A A B
A 1 0 0 0 0 1 1 0
B 0 1 0 1 0 0 0 1
C 0 0 1 0 1 0 0 0
这给了我们以下数字:
10000110, 01010001, 00101000
挑战是打印这些二进制数字。但是,重要的是要查看在选择题测试中使用了哪些字母。例如:
ABCDCDBCDABC
这个最高字母是字母表中D
的第4个字母。因此,我们需要输出4个不同的二进制数。即:
100000000100, 010000100010, 001010010001, 000101001000
请注意,您必须查看最高的字母。考虑以下示例:
AACCACAC
尽管B
未使用,但我们需要输出的二进制结果B
。这意味着答案将是:
11001010, 00000000, 00110101
任务
给定选择题测试的答案,输出二进制数。您可以假设输入将为非空且仅包含字母[A-Z]
。除了使用1和0,您还可以使用true和false。
测试用例:
Input: ABBBABABA
Output: 100010101, 011101010
Input: AAAAAAAAA
Output: 111111111
Input: AFGHEEHFD
Output: 100000000 000000000 000000000 000000001 000011000 010000010 001000000 000100100
Input: Z
Output: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1
Input: ABCDCDBCDABC
Output: 100000000100, 010000100010, 001010010001, 000101001000
这是代码高尔夫球,因此,字节数最少的提交将获胜!
[a-z]
改用吗?