假设我有价值观A B C D E
和八个地方1 2 3 4 5 6 7 8
。我怎样才能得到所有可能的组合打印两次和三次重复?
例子:
1 2 3 4 5 6 7 8
_______________
A A B B C C D E
A B B C C D D E (and so on...)
A A A B B C D E
A B B B C C D E (and so on...)
哪个组合紧随其后并不重要。不应有任何缺失值,例如AABBCCDD
(E
缺失的地方)
假设我有价值观A B C D E
和八个地方1 2 3 4 5 6 7 8
。我怎样才能得到所有可能的组合打印两次和三次重复?
例子:
1 2 3 4 5 6 7 8
_______________
A A B B C C D E
A B B C C D D E (and so on...)
A A A B B C D E
A B B B C C D E (and so on...)
哪个组合紧随其后并不重要。不应有任何缺失值,例如AABBCCDD
(E
缺失的地方)
一个粗略的方法
zsh
/ksh93
/bash
可能是:我们使用 zsh-style从to
{A..E}
生成所有 5 8个组合,并删除不包含、、、或超过 3 个相同字符的组合。AAAAAAAA
EEEEEEEE
sed
A
B
C
D
E
将
;s/./ &/2g
(GNUsed
) 或;s/./ &/g;s/ //
(anysed
) 添加到sed
代码中以在字母之间插入空格。