2013-04-30 77 views

回答

2

你可以使用常規的Python結構,如for i in range(n)達到你想要的東西:

s = Solver() 
a = Array('a', IntSort(), IntSort()) 
xs = [20, 23, 27, 12, 19, 31, 41, 7] 

for i in range(len(xs)): 
    s.add(Select(a, i) == xs[i]) 

a1 = Array('a1', IntSort(), IntSort()) 

s.add(a1 == Store(a, 3,9)) 

print s.check() 

m = s.model() 
for d in m.decls(): 
    print "%s = %s" % (d.name(), m[d]) 

運行它的在線here

如果你可以寫一些像s.add(a == xs)s.add(a.startsWith(xs))這將是很好的,但我不知道這是否可能。