基本上,这个问题是关于必须为6个值创建排列的数据。每个从1到38。
因此,第一个排列是
1 1 1 1 1 1 [ permutation 1 ] 1 1 1 1 1 2 [ permutation 2 ] 1 1 1 1 1 3... [ permutation 3 ]
结束于
38 38 38 38 38 38 [ permutation 38^^6 ]
输出仅由6个嵌套循环创建,每个循环从1到38;在最内部的循环中,您将打印6个循环计数器。
现在我想知道其背后的数学原理;出于好奇:什么是“功能”
有人知道吗?
它的工作原理与更改基数(二进制,八进制或十六进制)完全相同。第一个问题很简单:1 * 38 ^ 6 + 2 * 38 ^ 5 + 3 * 38 ^ 4 + 4 * 38 ^ 3 + … + 6 * 38 ^ 0第二个问题相反:102382 mod 38 …递归 UPDATE 让我们假设我们想将10更改为基数2:
10/2=5 remainder(modulus) **0** 5/2=2 remainder **1** 2/2=1 remainder **0** 1/2=0 remainder **1**
向后是 1010, 一般给M更改底数B,将M除以B,其余将成为新底数