在中国剩余定理可以在模运算非常有用。
例如,考虑以下同余关系集:
对于这样的全等关系集,其中所有基数(3, 5, 7在此示例中)都是互质的,则在满足此关系的基数(在此示例中)与的乘积n之间将只有一个整数,1且其中的乘积等于底数(3*5*7 = 105在此示例中) 。
在此示例中,数字将为14,由以下公式生成:
其中2, 4, and 0,从上面的例子中给出。
70, 21, 15是公式的系数,它们取决于基数3, 5, 7。
为了计算70, 21, 15一组基的公式的系数(在我们的示例中),我们使用以下过程。
对于a一组基准中的每个数字:
- 找到所有其他基数的乘积,记为
P。 - 找出除以
P的余数的第一个倍数。这是的系数。1aa
例如,要计算对应于底数的系数3,我们找到所有其他底数的乘积(即5*7 = 35),然后找到该乘积1除以底数后剩下的余数的第一个倍数。
在这种情况下,35留下的剩余部分2时除以3,但35*2 = 70叶子的其余部分1时除以3,所以70对于对应的系数3。同样,3*7 = 21留下的剩余部分1时,除以5和3*5 = 15留下的剩余部分1时,除以7。
简而言之
对于a一组数字中的每个数字:
- 找到所有其他数字的乘积,记为
P。 - 找出除以
P的余数的第一个倍数。这是的系数。1aa
挑战
- 对于两个或多个碱基的集合,挑战是找到对应系数的集合。
- 基数的集合保证是成对的互质,每个基数保证大于1。
- 您的输入是一个整数列表,作为输入
[3,4,5]或以空格分隔的字符串"3 4 5",但是您的输入有效。 - 您的输出应该是整数列表或以空格分隔的表示系数集的字符串。
测试用例
input output
[3,5,7] [70,21,15]
[2,3,5] [15,10,6]
[3,4,5] [40,45,36]
[3,4] [4,9]
[2,3,5,7] [105,70,126,120]
[40,27,11] [9801,7480,6480]
[100,27,31] [61101,49600,56700]
[16,27,25,49,11] [363825,2371600,2794176,5583600,529200]
非常感谢Leaky Nun在编写此挑战中所提供的帮助。与往常一样,如果问题仍然不清楚,请告诉我。祝你好运,打高尔夫球!





