我有三种可能的战争价值(w),买(b)和卖出(s)。我必须生成一个长度为N的组合字符串。
假设N为2总组合为3x3 = 9
w,w
w,b
w,s
b,w
b,b
b,s
s,w
s,b
s,s
同样我必须生成一个大小等于N的组合字符串(w,s,b).2 <= N <= 8000
答案 0 :(得分:0)
您可以使用递归函数执行此操作。这是python中的一个例子,但你可以用你最喜欢的语言轻松地重写它。
def x(partial):
if len(partial) == N:
handle_solution(partial)
for c in ('w', 'b', 's'):
x(partial + c)
无论语言或实现如何,这都会很慢。解决方案的数量是3 ^ N,因此即使对于相对较小的N值,这将花费很长时间。你应该回到原来的问题,找出解决问题的方法,而无需经过所有的组合。