16
Mod 2多项式系数
quintopia在这里发布了计算多项式系数的挑战(此处的某些文本是从此处复制的)。有一个有趣的算法可以计算系数2的多项式。 给定数字列表k 1,k 2,...,k m,输出多项式系数的余数: 降低模2.下列算法并此有效地:对于每个ķ 我,计算的二进制展开ķ 我,即,找到一个IJ,使得每个一个IJ是1或0和 如果存在j使r≠s 的rj = a sj = 1,则相关的mod 2多项式系数为0,否则mod 2多项式系数为1。 任务 编写一个程序或函数,该程序或函数采用m个数字k 1,k 2,...,k m,并输出或返回相应的多项式系数。如果需要,您的程序可以选择将m作为附加参数。 这些数字可以按喜欢的任何格式输入,例如分组到列表中或以一元编码或其他方式输入,只要多项式系数的实际计算是由您的代码执行的,而不是由编码过程执行的。 如果多项式系数为奇数,则输出可以为任何真值,如果多项式系数为偶数,则输出可以为任何假值。 不允许设计用于计算多项式系数的内置函数。 有标准漏洞。 计分 这就是代码高尔夫:以字节为单位的最短解决方案获胜。 例子: 为了找到7、16和1000的多项式系数,我们对它们分别进行二进制扩展: 由于没有列具有不超过1的列,因此多项式系数是奇数,因此我们应该输出真实值。 为了找到7、16和76的多项式系数,我们对它们分别进行二进制扩展: 由于76和7的二进制扩展均为4,因此多项式系数为偶数,因此我们输出了falsey值。 测试用例: Input: [2, 0, 1] Output: Truthy Input: [5,4,3,2,1] Output: Falsey Input: [1,2,4,8,16] Output: Truthy Input: [7,16,76] …