rendered paste bodyimport time,sys
#T(a, 0) = 1
#T(0, b) = T(1, b-1)
#T(24, b) = T(23, b)
#T(a, b) = T(a-1, b-1) + T(a+1, b-1)
def T(a, b):
if b==1 or b==0: return 1
if a==0: return T(1, b-1)
if a==25: return T(24, b-1)
return T(a-1, b-1) + T(a+1, b-1)
#counter=0
def triv(n):
#global counter
#counter+=1
if n==0:return 1
else:return triv(n-1)+triv(n-1)
def memoizate(f):
class F:
def __init__(self, f):
self.f=f
self.m={}
def call(self, *args):
#print args
targs=tuple(args)
#print targs
try:
return self.m[targs]
except:
res=self.f(*args)
self.m[targs]=res
return res
_f=F(f)
return lambda *a:_f.call(*a)
sys.setrecursionlimit(20000)
T=memoizate(T)
def get_uohg(a):
return sum([T(i, a) for i in range(25)])
for arg in sys.argv:
try:
uohg = get_uohg(int(arg))
print arg, uohg
except:
pass