谜题 IBM-235
排序后的三次骰点生成一骰两币
IBM Research · Ponder This · 2017 年 11 月
IBM Ponder This #235 · 2017 年 11 月
Alice 希望生成三个相互独立的随机变量:一次公平六面骰结果与两次公平硬币结果。她掷三个公平骰子,把结果排序后只告诉 Bob 三元组 (a,b,c),其中 1≤a≤b≤c≤6。
Bob 声称可从中计算 x、y、z,满足 x,y∈{0,1}、z∈{1,…,6},且三者确实独立、均匀,分别充当两枚硬币与一个骰子。
他只用少于六十次运算、至多四个中间变量,允许任意括号。运算只可选加、减、乘、整数除法、取模、整数乘方、按位与、或、异或。
给出一个可能的方法。
解答
认真尝试后再打开待补充。