在下列条件下,如何生成排列?
>有两个整数,例如. 1和4.
>给出的两个整数将是排列的一部分,其中每个整数最多出现N次,每个排列的大小为K.
因此,假设N = 3且K = 5,那么正确的结果应该是:
{1, 1, 1, 4, 4} , {1, 1, 4, 1, 4} , {4, 4, 4, 1, 1} , etc..
以下是无效或不正确结果的示例:
{1, 1, 1, 1, 4} -> 1 appear 4 times (1 should appear not greater than 3 times)
{1, 4, 4, 4, 1, 1} -> the size of the list is 6 (the size should be exactly 5)
此外,每个排列应该是唯一的,这意味着没有重复.
我希望我能为这个问题找到最好的解决方案或算法.
提前致谢.