Difference between revisions of "TADM2E 8.13"

From Algorithm Wiki
Jump to: navigation, search
(lm variable added. Code style changed from python2 to python3. And the float("inf") , the infinity in python replaced with a large number.)
Line 1: Line 1:
              a=raw_input()                        # the input string
+
a=raw_input()                        # the input string
              m=raw_input().split(" ")            # the set of tokens separated by space
+
m=raw_input().split(" ")            # the set of tokens separated by space
              n=len(m)  
+
n=len(m)  
              k=int(raw_input())                  # the maximum length of the token
+
k=int(raw_input())                  # the maximum length of the token
              l=[9999999999]*(len(a)+1)     
+
l=[float("inf")]*(len(a)+1)     
              l[0]=0
+
l[0]=0
              for i in range(1,len(a)+1):
+
for i in range(1,len(a)+1):
              while(lm<i):
+
    lm = 0
                  cost = 99999
+
    while(lm<I):
                  if a[lm:i] in m:
+
        cost = float("inf")
                      cost=l[lm]+1
+
        if a[lm:i] in m:
                  if cost < l[i] :
+
            cost=l[lm]+1
                      l[i] = cost
+
        if cost < l[i] :
                  lm=lm+1
+
            l[i] = cost
            print l[-1]
+
        lm=lm+1
 +
print(l[-1])
  
  
 
Python Based implementation
 
Python Based implementation

Revision as of 20:18, 25 April 2020

a=raw_input() # the input string m=raw_input().split(" ") # the set of tokens separated by space n=len(m) k=int(raw_input()) # the maximum length of the token l=[float("inf")]*(len(a)+1) l[0]=0 for i in range(1,len(a)+1):

   lm = 0
   while(lm<I):
       cost = float("inf")
       if a[lm:i] in m:
           cost=l[lm]+1
       if cost < l[i] :
           l[i] = cost
       lm=lm+1

print(l[-1])


Python Based implementation