Guest User

Untitled

a guest
Jun 22nd, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.09 KB | None | 0 0
  1. $trace = [];
  2.  
  3. $str1 = 'bcadb';
  4. $N = strlen($str1);
  5.  
  6. $str2 = 'acdb';
  7. $M = strlen($str2);
  8.  
  9. $MAX = $N + $M;
  10. echo 'MAX=' . $MAX . PHP_EOL;
  11. $lengthOfSES = 0;
  12.  
  13. $V[1] = 0;
  14. for ($D = 0; $D <= $MAX; $D++) {
  15. echo 'D=' . $D . PHP_EOL;
  16. for ($k = -$D; $k <= $D; $k += 2) {
  17. echo ' k=' . $k . PHP_EOL;
  18. if ($k == -$D || ($k != $D && $V[$k - 1] < $V[$k + 1])) {
  19. $x = $V[$k + 1];
  20. } else {
  21. $x = $V[$k - 1] + 1;
  22. }
  23. $y = $x - $k;
  24. while ($x < $N && $y < $M && ($str1[$x - 1 + 1] == $str2[$y - 1 + 1])) {
  25. $x++;
  26. $y++;
  27. }
  28. $V[$k] = $x;
  29. if ($x >= $N && $y >= $M) {
  30. $lengthOfSES = $D;
  31. print_r($V);
  32. echo '$lengthOfSES is ' . $D . PHP_EOL;
  33. die;
  34. }
  35. }
  36. }
  37. print('Length of an SES is greater than MAX');
  38.  
  39. }
Add Comment
Please, Sign In to add comment