Advertisement
Guest User

Untitled

a guest
Dec 5th, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.86 KB | None | 0 0
  1. C = "abcbaabc"
  2.  
  3.  
  4. Matrix = [[0 for x in range(len(C))] for y in range(len(C))]
  5.  
  6. for i in range(0,len(C)-1):
  7. Matrix[i][i] = 1
  8. if C[i] == C[i+1]:
  9. Matrix[i][i+1] = 1
  10. Matrix[len(C)-1][len(C)-1] = 1
  11.  
  12. for k in range(0, len(C)):
  13. for i in range(1,len(C)-k-1):
  14. if Matrix[i][i+k] == 1:
  15. if C[i+k+1] == C[i-1]:
  16. Matrix[i-1][i+k+1] = 1
  17.  
  18. nr = 0
  19. for i in Matrix:
  20. for j in i:
  21. if j == 1:
  22. nr += 1
  23.  
  24. for i in Matrix:
  25. print(i)
  26. print(nr)
  27.  
  28. n = len(C)
  29. Nr = [0 for x in range(n+2)]
  30.  
  31. Nr[n+1] = 0
  32. Nr[n] = 1
  33.  
  34. nrMinimPalindrom = 0
  35.  
  36.  
  37. for i in range(-n+1,0):
  38. nrMinimPalindrom = n + 2
  39. for k in range(-i+1,n+2):
  40. if Matrix[-i-1][k-2] == 1:
  41. if Nr[k] < nrMinimPalindrom:
  42. nrMinimPalindrom = Nr[k]
  43. Nr[-i] = 1 + nrMinimPalindrom
  44. print(Nr[1])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement