没有明显首字母缩写的编译器语言,INTERCAL的缩写,是一种非常独特的编程语言。其不可复制的品质包括其二进制运算符。
INTERCAL的两个二进制运算符进行交织(也称为mingle),然后选择。交错表示为变化(¢),选择表示为花样(〜)。
交织通过取0-65535范围内的两个数字并将其位交替来进行。例如:
234 ¢ 4321
234 = 0000011101010
4321 = 1000011100001
Result: 01000000001111110010001001
Output: 16841865
Select的工作方式是取0-65535范围内的两个数字,取第一个操作数中与第二个操作数中1s位置相同的位,并右包装这些位。
2345 ~ 7245
2345 = 0100100101001
7245 = 1110001001101
Taken : 010 0 10 1
Result: 0100101
Output: 37
在此挑战中,将使用交错或选择操作为您提供一个二进制表达式。您必须使用尽可能少的字节来计算结果。
该表达式将以空格分隔的字符串形式给出,该字符串由0-65535中的整数,空格¢
或~
,空格和0-65535中的整数组成。
输入和输出可以通过任何标准系统(STDIN,功能,命令行等)进行。禁止标准漏洞。
例子:
5 ¢ 6
54
5 ~ 6
2
51234 ¢ 60003
4106492941
51234 ~ 60003
422
这是代码高尔夫球-最少的字节数获胜。祝好运。
编辑:由于某些语言不支持INTERCAL的更改(¢)符号,因此您可以改用大笔钱($)符号,但要罚5个字节。
$
。
FIVE ONE TWO THREE FOUR
吗?而且输出不应该是罗马数字吗?