Anurag <[EMAIL PROTECTED]> wrote: > What about this no map, reduce, mutiplication or even addition > Its truly interative and You will need to interate till infinity if > you want correct answer ;) > > def factorial(N): > """ > Increase I ...and go on increasing... > """ > import random > > myNumer = range(N) > count = 0 > I = 10000 #10**(N+1) > for i in range(I): > bucket = range(N) > number = [] > for i in range(N): > k = bucket[ random.randrange(0,len(bucket))] > bucket.remove(k) > number.append(k) > > if number == myNumer: > count+=1 > > return int(I*1.0/count+.5)
;-) Note you can write your middle loop as for i in range(I): number = myNumer[:] random.shuffle(number) if number == myNumer: count+=1 -- Nick Craig-Wood <[EMAIL PROTECTED]> -- http://www.craig-wood.com/nick -- http://mail.python.org/mailman/listinfo/python-list