Advertisement
Guest User

Untitled

a guest
Apr 6th, 2020
174
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.58 KB | None | 0 0
  1. def MEMOIZEDCUTROD(p, n):
  2.     r=[]
  3.     for i in range ( 0 , n ):
  4.        
  5.         r.append(0)
  6.    
  7.         r[i] = float('-inf')
  8.        
  9.     return MEMOIZEDCUTRODAUX(p, n, r)
  10.  
  11. def MEMOIZEDCUTRODAUX(p, n, r):
  12.    
  13.     if r[n] >= 0:
  14.        
  15.         return r[n]
  16.    
  17.     elif n == 0:
  18.        
  19.         q = 0
  20.    
  21.     else:
  22.        
  23.         q = float('-inf')
  24.        
  25.         for i in range(1,n):
  26.            
  27.             q = max(q, p[i] + MEMOIZEDCUTRODAUX(p, n-i, r))
  28.     r[n] = q
  29.     return q
  30.  
  31. p=[1,5,8,9,10,17,17,20,24,30]
  32. n=len(p)
  33. print(MEMOIZEDCUTROD(p, n))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement