20得票8回答
如何找到收藏卡牌套装的最佳价格?

或者旅行推销员玩魔术! 我认为这是一个非常有趣的算法挑战。不知道是否有人对解决它有好的建议,或者它已经可以用已知的方法来解决。 TCGPlayer.com出售各种游戏的可收藏卡牌,包括魔法风云(Magic the Gathering)。他们不仅销售自己库存的卡牌,而且还是50多个供应商的转售商...

20得票3回答
打乱列表,确保没有任何一个项目保持原来的位置。

我想打乱一个具有唯一元素的列表,但不是完全随机的打乱。我需要确保打乱后的列表中没有任何元素与原始列表中的位置相同。因此,如果原始列表是(A,B,C,D,E),这个结果是可以的:(C,D,B,E,A),但这个结果不行:(C,E,A,D,B),因为“D”仍然是第四个项。该列表最多会有七个项目。极端...

20得票7回答
在R中排列向量的所有唯一枚举

我正在尝试找到一个函数,可以对向量的所有唯一排列进行置换,同时不计算相邻的元素类型子集内的排列。例如: dat <- c(1,0,3,4,1,0,0,3,0,4) 有。 factorial(10) > 3628800 可能的排列组合有很多种,但只有10!/(2!*2!*...

20得票5回答
计算大数n和k的二项式系数(nCk)

我刚看到这个问题,不知道如何解决。你能否提供算法、C++代码或想法? 这是一个非常简单的问题。给定N和K的值,您需要告诉我们二项式系数C(N,K)的值。您可以放心,K <= N,N的最大值为1,000,000,000,000,000。由于该值可能很大,所以您需要对结果进行模1009的...

20得票2回答
在矩阵中获得相邻的1所需的最小翻转次数

给定二进制矩阵(值为0或1),相邻的1表示“山丘”。另外,给定一些数字k,则找到至少需要翻转0的最小数量,以形成大小为k的山丘。 编辑: 为了澄清,相邻表示左右上下邻居。 对角线不算作相邻。例如, [0 1 0 1] 是大小为2的一个山丘, [0 1 1 0] 定义了大小为1的2个...

19得票3回答
尊重个人偏好的情况下,如何分配人员到大楼?

今天我的一个朋友问了我一个分配问题。我找到了一个相当直接的解决方案,但我感觉它可以变得更简单和更快。 问题: 假设我有N个人,我需要将他们分配到M个建筑物中,每个建筑物最多可以容纳K个人。并非所有人都愿意与彼此同住,所以我有一个N*N的矩阵,其中1表示愿意共居的人。如果一个单元格包含1,则表...

19得票7回答
在Perl中,我该如何生成一个列表的所有可能组合?

我有一个列表文件,需要生成一个比较每一行的新文件。例如,我的文件内容如下: AAA BBB CCC DDD EEE 我想让最终的列表看起来像这样: AAA BBB AAA CCC AAA DDD AAA EEE BBB CCC BBB DD...

19得票4回答
计算掷出某个数字的方法数量

我是一名高中计算机科学学生,今天我被给了一个问题: 程序描述:骰子玩家有一种信仰,认为在掷三个骰子时,得到十比得到九更容易。你能写一个程序来证明或反驳这种信仰吗? 让计算机计算扔三个骰子的所有可能方式:1 + 1 + 1,1 + 1 + 2,1 + 1 + 3等。将每个可能性相加,看看有多...

19得票7回答
如何找到具有第k大和的配对?

给定两个排序后的数字数组,我们要找到第k大可能总和的一对数。(一对数是来自第一个数组的一个元素和来自第二个数组的一个元素)。例如,当输入的数组为 [2, 3, 5, 8, 13] [4, 8, 12, 16] 时,有最大和的数对为 13 + 16 = 29 13 + 12 = 25...

18得票6回答
第N个组合

有没有直接获取nCr所有组合的有序集合中第N个组合的方法? 例如:我有四个元素:[6, 4, 2, 1]。取其中三个的所有可能组合为:[[6, 4, 2], [6, 4, 1], [6, 2, 1], [4, 2, 1]]。 是否有一种算法能够让我直接获取有序结果集中第三个答案 [6, 2...